New Features: - Provider duplication and manual sorting via drag-and-drop - Custom endpoint management for aggregator providers - Usage query with auto-refresh interval and test script API - Config editor improvements (JSON format button, real-time TOML validation) - Auto-sync on directory change for WSL environment support - Load live config when editing active provider to protect manual modifications - New provider presets: DMXAPI, Azure Codex, AnyRouter, AiHubMix, MiniMax - Partner promotion mechanism (Zhipu GLM Z.ai) Architecture Improvements: - Backend: 5-phase refactoring (error handling → command split → services → concurrency) - Frontend: 4-stage refactoring (tests → hooks → components → cleanup) - Testing: 100% hooks unit test coverage, integration tests for critical flows Documentation: - Complete README rewrite with detailed architecture overview - Separate Chinese (README_ZH.md) and English (README.md) versions - Comprehensive v3.6.0 changelog with categorized changes - New bilingual screenshots and partner banners Bug Fixes: - Fixed configuration sync issues (apiKeyUrl priority, MCP sync, import sync) - Fixed usage query interval timing and refresh button animation - Fixed UI issues (edit mode alignment, language switch state) - Fixed endpoint speed test and provider duplicate insertion position - Force exit on config error to prevent silent fallback Technical Details: - Updated to Tauri 2.8.x, TailwindCSS 4.x, TanStack Query v5.90.x - Removed legacy v1 migration logic for better startup performance - Standardized command parameters (unified to camelCase `app`) - Result pattern for graceful error handling
60 lines
1.6 KiB
TOML
60 lines
1.6 KiB
TOML
[package]
|
|
name = "cc-switch"
|
|
version = "3.6.0"
|
|
description = "Claude Code & Codex 供应商配置管理工具"
|
|
authors = ["Jason Young"]
|
|
license = "MIT"
|
|
repository = "https://github.com/farion1231/cc-switch"
|
|
edition = "2021"
|
|
rust-version = "1.85.0"
|
|
|
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
|
|
[lib]
|
|
name = "cc_switch_lib"
|
|
crate-type = ["staticlib", "cdylib", "rlib"]
|
|
|
|
[features]
|
|
default = []
|
|
test-hooks = []
|
|
|
|
[build-dependencies]
|
|
tauri-build = { version = "2.4.0", features = [] }
|
|
|
|
[dependencies]
|
|
serde_json = "1.0"
|
|
serde = { version = "1.0", features = ["derive"] }
|
|
log = "0.4"
|
|
chrono = "0.4"
|
|
tauri = { version = "2.8.2", features = ["tray-icon"] }
|
|
tauri-plugin-log = "2"
|
|
tauri-plugin-opener = "2"
|
|
tauri-plugin-process = "2"
|
|
tauri-plugin-updater = "2"
|
|
tauri-plugin-dialog = "2"
|
|
tauri-plugin-store = "2"
|
|
dirs = "5.0"
|
|
toml = "0.8"
|
|
toml_edit = "0.22"
|
|
reqwest = { version = "0.12", default-features = false, features = ["rustls-tls", "json"] }
|
|
tokio = { version = "1", features = ["macros", "rt-multi-thread", "time"] }
|
|
futures = "0.3"
|
|
regex = "1.10"
|
|
rquickjs = { version = "0.8", features = ["array-buffer", "classes"] }
|
|
thiserror = "1.0"
|
|
|
|
[target.'cfg(any(target_os = "macos", target_os = "windows", target_os = "linux"))'.dependencies]
|
|
tauri-plugin-single-instance = "2"
|
|
|
|
[target.'cfg(target_os = "macos")'.dependencies]
|
|
objc2 = "0.5"
|
|
objc2-app-kit = { version = "0.2", features = ["NSColor"] }
|
|
|
|
# Optimize release binary size to help reduce AppImage footprint
|
|
[profile.release]
|
|
codegen-units = 1
|
|
lto = "thin"
|
|
opt-level = "s"
|
|
panic = "abort"
|
|
strip = "symbols"
|