Compare commits
1 Commits
master
...
196f5e20e0
Author | SHA1 | Date | |
---|---|---|---|
196f5e20e0 |
@ -3,7 +3,7 @@
|
|||||||
"ignorePaths": ["**/flutter/**", "**/react/**"],
|
"ignorePaths": ["**/flutter/**", "**/react/**"],
|
||||||
"packageRules": [
|
"packageRules": [
|
||||||
{
|
{
|
||||||
"matchUpdateTypes": ["major", "minor", "patch"],
|
"matchUpdateTypes": ["minor", "patch"],
|
||||||
"automerge": true
|
"automerge": true
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
1687
rust/Cargo.lock
generated
1687
rust/Cargo.lock
generated
File diff suppressed because it is too large
Load Diff
@ -1,5 +1,5 @@
|
|||||||
[workspace]
|
[workspace]
|
||||||
resolver = "2"
|
|
||||||
members = [
|
members = [
|
||||||
"sea_battle_backend",
|
"sea_battle_backend",
|
||||||
"sea_battle_cli_player"
|
"sea_battle_cli_player"
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
FROM debian:bookworm-slim
|
FROM debian:bullseye-slim
|
||||||
|
|
||||||
COPY sea_battle_backend /usr/local/bin/sea_battle_backend
|
COPY sea_battle_backend /usr/local/bin/sea_battle_backend
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "sea_battle_backend"
|
name = "sea_battle_backend"
|
||||||
version = "0.2.1"
|
version = "0.2.0"
|
||||||
edition = "2021"
|
edition = "2021"
|
||||||
license = "GPL-2.0-or-later"
|
license = "GPL-2.0-or-later"
|
||||||
description = "A Sea Battle game backend server"
|
description = "A Sea Battle game backend server"
|
||||||
@ -12,24 +12,24 @@ categories = [ "games" ]
|
|||||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
clap = { version = "4.5.4", features = ["derive"] }
|
clap = { version = "4.4.0", features = ["derive"] }
|
||||||
log = "0.4.21"
|
log = "0.4.20"
|
||||||
env_logger = "0.11.3"
|
env_logger = "0.10.0"
|
||||||
serde = { version = "1.0.200", features = ["derive"] }
|
serde = { version = "1.0.185", features = ["derive"] }
|
||||||
serde_json = "1.0.116"
|
serde_json = "1.0.105"
|
||||||
actix-web = "4.5.1"
|
actix-web = "4.1.0"
|
||||||
actix-cors = "0.7.0"
|
actix-cors = "0.6.2"
|
||||||
actix = "0.13.3"
|
actix = "0.13.0"
|
||||||
actix-web-actors = "4.3.0"
|
actix-web-actors = "4.1.0"
|
||||||
actix-rt = "2.9.0"
|
actix-rt = "2.7.0"
|
||||||
uuid = { version = "1.8.0", features = ["v4"] }
|
uuid = { version = "1.4.1", features = ["v4"] }
|
||||||
rand = "0.8.5"
|
rand = "0.8.5"
|
||||||
serde_with = "3.8.1"
|
serde_with = "3.3.0"
|
||||||
tokio = { version = "1", features = ["full"] }
|
tokio = { version = "1", features = ["full"] }
|
||||||
semver = "1.0.22"
|
semver = "1.0.18"
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
#reqwest = { version = "0.11.11", default-features = false, features = ["json", "rustls-tls"] }
|
#reqwest = { version = "0.11.11", default-features = false, features = ["json", "rustls-tls"] }
|
||||||
tokio-tungstenite = "0.21.0"
|
tokio-tungstenite = "0.20.0"
|
||||||
serde_urlencoded = "0.7.1"
|
serde_urlencoded = "0.7.1"
|
||||||
futures = "0.3.30"
|
futures = "0.3.23"
|
||||||
|
@ -144,7 +144,7 @@ impl GameRules {
|
|||||||
|
|
||||||
/// Check out whether these game rules are valid or not
|
/// Check out whether these game rules are valid or not
|
||||||
pub fn is_valid(&self) -> bool {
|
pub fn is_valid(&self) -> bool {
|
||||||
self.get_errors().is_empty()
|
return self.get_errors().is_empty();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "sea_battle_cli_player"
|
name = "sea_battle_cli_player"
|
||||||
version = "0.2.1"
|
version = "0.2.0"
|
||||||
edition = "2021"
|
edition = "2021"
|
||||||
license = "GPL-2.0-or-later"
|
license = "GPL-2.0-or-later"
|
||||||
description = "A Sea Battle game shell client"
|
description = "A Sea Battle game shell client"
|
||||||
@ -13,22 +13,22 @@ categories = [ "games" ]
|
|||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
sea_battle_backend = { path = "../sea_battle_backend", version = "0.2.0" }
|
sea_battle_backend = { path = "../sea_battle_backend", version = "0.2.0" }
|
||||||
clap = { version = "4.5.4", features = ["derive"] }
|
clap = { version = "4.4.0", features = ["derive"] }
|
||||||
log = "0.4.21"
|
log = "0.4.20"
|
||||||
env_logger = "0.11.3"
|
env_logger = "0.10.0"
|
||||||
tui = "0.19.0"
|
tui = "0.19.0"
|
||||||
crossterm = "0.27.0"
|
crossterm = "0.27.0"
|
||||||
lazy_static = "1.4.0"
|
lazy_static = "1.4.0"
|
||||||
tokio = "1.37.0"
|
tokio = "1.32.0"
|
||||||
num = "0.4.2"
|
num = "0.4.1"
|
||||||
num-traits = "0.2.18"
|
num-traits = "0.2.16"
|
||||||
num-derive = "0.4.2"
|
num-derive = "0.4.0"
|
||||||
textwrap = "0.16.1"
|
textwrap = "0.16.0"
|
||||||
tokio-tungstenite = { version = "0.21.0", features = ["__rustls-tls", "rustls-tls-native-roots"] }
|
tokio-tungstenite = { version = "0.20.0", features = ["__rustls-tls", "rustls-tls-native-roots"] }
|
||||||
serde_urlencoded = "0.7.1"
|
serde_urlencoded = "0.7.1"
|
||||||
futures = "0.3.30"
|
futures = "0.3.23"
|
||||||
serde_json = "1.0.116"
|
serde_json = "1.0.105"
|
||||||
hostname = "0.4.0"
|
hostname = "0.3.1"
|
||||||
rustls = "0.22.2"
|
rustls = "0.21.6"
|
||||||
reqwest = { version = "0.12.4", features = ["json", "rustls-tls"], default-features = false }
|
hyper-rustls = { version = "0.24.1", features = ["rustls-native-certs"] }
|
||||||
rustls-native-certs = {version = "0.7.0"}
|
reqwest = { version = "0.11", features = ["json", "rustls-tls"], default-features = false }
|
@ -2,6 +2,7 @@ use crate::cli_args::cli_args;
|
|||||||
use crate::server;
|
use crate::server;
|
||||||
use futures::stream::{SplitSink, SplitStream};
|
use futures::stream::{SplitSink, SplitStream};
|
||||||
use futures::{SinkExt, StreamExt};
|
use futures::{SinkExt, StreamExt};
|
||||||
|
use hyper_rustls::ConfigBuilderExt;
|
||||||
use sea_battle_backend::data::*;
|
use sea_battle_backend::data::*;
|
||||||
use sea_battle_backend::human_player_ws::{ClientMessage, ServerMessage};
|
use sea_battle_backend::human_player_ws::{ClientMessage, ServerMessage};
|
||||||
use sea_battle_backend::server::{
|
use sea_battle_backend::server::{
|
||||||
@ -126,18 +127,13 @@ impl Client {
|
|||||||
|
|
||||||
let (socket, _) = if ws_url.starts_with("wss") {
|
let (socket, _) = if ws_url.starts_with("wss") {
|
||||||
// Perform a connection over TLS
|
// Perform a connection over TLS
|
||||||
let mut roots = rustls::RootCertStore::empty();
|
|
||||||
for cert in rustls_native_certs::load_native_certs()? {
|
|
||||||
roots.add(cert).unwrap();
|
|
||||||
}
|
|
||||||
|
|
||||||
let config = rustls::ClientConfig::builder()
|
let config = rustls::ClientConfig::builder()
|
||||||
.with_root_certificates(roots)
|
.with_safe_defaults()
|
||||||
|
.with_native_roots()
|
||||||
.with_no_client_auth();
|
.with_no_client_auth();
|
||||||
let connector = tokio_tungstenite::Connector::Rustls(Arc::new(config));
|
let connector = tokio_tungstenite::Connector::Rustls(Arc::new(config));
|
||||||
|
|
||||||
tokio_tungstenite::connect_async_tls_with_config(ws_url, None, false, Some(connector))
|
tokio_tungstenite::connect_async_tls_with_config(ws_url, None, false,Some(connector)).await?
|
||||||
.await?
|
|
||||||
} else {
|
} else {
|
||||||
// Perform an unsecure connection
|
// Perform an unsecure connection
|
||||||
tokio_tungstenite::connect_async(ws_url).await?
|
tokio_tungstenite::connect_async(ws_url).await?
|
||||||
|
@ -98,7 +98,7 @@ impl<'a> GameMapWidget<'a> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Widget for GameMapWidget<'_> {
|
impl<'a> Widget for GameMapWidget<'a> {
|
||||||
fn render(mut self, area: Rect, buf: &mut Buffer) {
|
fn render(mut self, area: Rect, buf: &mut Buffer) {
|
||||||
let alphabet = PlayConfiguration::default().ordinate_alphabet;
|
let alphabet = PlayConfiguration::default().ordinate_alphabet;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user