From d4709ffcf9f0f15994e3bf24b4e083b73bf77cb0 Mon Sep 17 00:00:00 2001 From: Luis Pater Date: Thu, 4 Sep 2025 08:23:51 +0800 Subject: [PATCH] Replace `path` with `filepath` for cross-platform compatibility - Updated imports and function calls to use `filepath` across all token storage implementations and server entry point. - Ensured consistent handling of directory and file paths for improved portability. --- cmd/server/main.go | 8 ++++---- internal/auth/claude/token.go | 4 ++-- internal/auth/codex/token.go | 4 ++-- internal/auth/gemini/gemini_token.go | 4 ++-- internal/auth/qwen/qwen_token.go | 4 ++-- 5 files changed, 12 insertions(+), 12 deletions(-) diff --git a/cmd/server/main.go b/cmd/server/main.go index b93e528a..27dc88ea 100644 --- a/cmd/server/main.go +++ b/cmd/server/main.go @@ -8,7 +8,7 @@ import ( "flag" "fmt" "os" - "path" + "path/filepath" "strings" "github.com/luispater/CLIProxyAPI/internal/cmd" @@ -36,7 +36,7 @@ func (m *LogFormatter) Format(entry *log.Entry) ([]byte, error) { timestamp := entry.Time.Format("2006-01-02 15:04:05") var newLog string // Customize the log format to include timestamp, level, caller file/line, and message. - newLog = fmt.Sprintf("[%s] [%s] [%s:%d] %s\n", timestamp, entry.Level, path.Base(entry.Caller.File), entry.Caller.Line, entry.Message) + newLog = fmt.Sprintf("[%s] [%s] [%s:%d] %s\n", timestamp, entry.Level, filepath.Base(entry.Caller.File), entry.Caller.Line, entry.Message) b.WriteString(newLog) return b.Bytes(), nil @@ -96,7 +96,7 @@ func main() { if err != nil { log.Fatalf("failed to get working directory: %v", err) } - configFilePath = path.Join(wd, "config.yaml") + configFilePath = filepath.Join(wd, "config.yaml") cfg, err = config.LoadConfig(configFilePath) } if err != nil { @@ -120,7 +120,7 @@ func main() { parts := strings.Split(cfg.AuthDir, string(os.PathSeparator)) if len(parts) > 1 { parts[0] = home - cfg.AuthDir = path.Join(parts...) + cfg.AuthDir = filepath.Join(parts...) } else { // If the path is just "~", set it to the home directory. cfg.AuthDir = home diff --git a/internal/auth/claude/token.go b/internal/auth/claude/token.go index 7fcf82f7..5e126864 100644 --- a/internal/auth/claude/token.go +++ b/internal/auth/claude/token.go @@ -7,7 +7,7 @@ import ( "encoding/json" "fmt" "os" - "path" + "path/filepath" ) // ClaudeTokenStorage stores OAuth2 token information for Anthropic Claude API authentication. @@ -49,7 +49,7 @@ func (ts *ClaudeTokenStorage) SaveTokenToFile(authFilePath string) error { ts.Type = "claude" // Create directory structure if it doesn't exist - if err := os.MkdirAll(path.Dir(authFilePath), 0700); err != nil { + if err := os.MkdirAll(filepath.Dir(authFilePath), 0700); err != nil { return fmt.Errorf("failed to create directory: %v", err) } diff --git a/internal/auth/codex/token.go b/internal/auth/codex/token.go index 6a7ac16c..34021ca9 100644 --- a/internal/auth/codex/token.go +++ b/internal/auth/codex/token.go @@ -7,7 +7,7 @@ import ( "encoding/json" "fmt" "os" - "path" + "path/filepath" ) // CodexTokenStorage stores OAuth2 token information for OpenAI Codex API authentication. @@ -43,7 +43,7 @@ type CodexTokenStorage struct { // - error: An error if the operation fails, nil otherwise func (ts *CodexTokenStorage) SaveTokenToFile(authFilePath string) error { ts.Type = "codex" - if err := os.MkdirAll(path.Dir(authFilePath), 0700); err != nil { + if err := os.MkdirAll(filepath.Dir(authFilePath), 0700); err != nil { return fmt.Errorf("failed to create directory: %v", err) } diff --git a/internal/auth/gemini/gemini_token.go b/internal/auth/gemini/gemini_token.go index 15a68d7d..67a51091 100644 --- a/internal/auth/gemini/gemini_token.go +++ b/internal/auth/gemini/gemini_token.go @@ -7,7 +7,7 @@ import ( "encoding/json" "fmt" "os" - "path" + "path/filepath" log "github.com/sirupsen/logrus" ) @@ -46,7 +46,7 @@ type GeminiTokenStorage struct { // - error: An error if the operation fails, nil otherwise func (ts *GeminiTokenStorage) SaveTokenToFile(authFilePath string) error { ts.Type = "gemini" - if err := os.MkdirAll(path.Dir(authFilePath), 0700); err != nil { + if err := os.MkdirAll(filepath.Dir(authFilePath), 0700); err != nil { return fmt.Errorf("failed to create directory: %v", err) } diff --git a/internal/auth/qwen/qwen_token.go b/internal/auth/qwen/qwen_token.go index 1ada3267..726938dc 100644 --- a/internal/auth/qwen/qwen_token.go +++ b/internal/auth/qwen/qwen_token.go @@ -7,7 +7,7 @@ import ( "encoding/json" "fmt" "os" - "path" + "path/filepath" ) // QwenTokenStorage stores OAuth2 token information for Alibaba Qwen API authentication. @@ -41,7 +41,7 @@ type QwenTokenStorage struct { // - error: An error if the operation fails, nil otherwise func (ts *QwenTokenStorage) SaveTokenToFile(authFilePath string) error { ts.Type = "qwen" - if err := os.MkdirAll(path.Dir(authFilePath), 0700); err != nil { + if err := os.MkdirAll(filepath.Dir(authFilePath), 0700); err != nil { return fmt.Errorf("failed to create directory: %v", err) }