fix: Resolve compilation errors for filter parser and config

Co-authored-by: aider (openai/andrew/openrouter/sonoma-sky-alpha) <aider@aider.chat>
This commit is contained in:
Andrew Phillips
2025-09-10 16:14:50 -03:00
parent 0d68f39c08
commit 9bade07938
2 changed files with 7 additions and 32 deletions

View File

@@ -396,29 +396,6 @@ impl Settings {
} }
/// Get server password from password_file or directly from config if configured
pub fn get_server_password(&self) -> Result<Option<String>> {
if let Some(server) = &self.server {
// First check for password_file
if let Some(password_file) = &server.password_file {
debug!("CONFIG: Reading password from file: {:?}", password_file);
let password = fs::read_to_string(password_file)
.with_context(|| format!("Failed to read password file: {:?}", password_file))?
.trim()
.to_string();
return Ok(Some(password));
}
// Fall back to direct password field
if let Some(password) = &server.password {
debug!("CONFIG: Using password from config");
return Ok(Some(password.clone()));
}
}
Ok(None)
}
/// Get server password from password_file or directly from config if configured /// Get server password from password_file or directly from config if configured
pub fn get_server_password(&self) -> Result<Option<String>> { pub fn get_server_password(&self) -> Result<Option<String>> {
if let Some(server) = &self.server { if let Some(server) = &self.server {

View File

@@ -6,8 +6,6 @@ use std::collections::HashMap;
#[grammar = "filter.pest"] #[grammar = "filter.pest"]
pub struct FilterParser; pub struct FilterParser;
use self::Rule;
#[derive(Debug)] #[derive(Debug)]
pub struct Filter { pub struct Filter {
pub name: String, pub name: String,
@@ -16,30 +14,30 @@ pub struct Filter {
pub fn parse_filter_string(input: &str) -> Result<Vec<Filter>, Box<dyn std::error::Error>> { pub fn parse_filter_string(input: &str) -> Result<Vec<Filter>, Box<dyn std::error::Error>> {
let mut filters = Vec::new(); let mut filters = Vec::new();
let pairs = FilterParser::parse(Rule::filters, input)?; let pairs = FilterParser::parse(FilterParser::Rule::filters, input)?;
for pair in pairs { for pair in pairs {
if pair.as_rule() == Rule::filter { if pair.as_rule() == FilterParser::Rule::filter {
let mut name = String::new(); let mut name = String::new();
let mut options = HashMap::new(); let mut options = HashMap::new();
for inner_pair in pair.into_inner() { for inner_pair in pair.into_inner() {
match inner_pair.as_rule() { match inner_pair.as_rule() {
Rule::filter_name => { FilterParser::Rule::filter_name => {
name = inner_pair.as_str().to_string(); name = inner_pair.as_str().to_string();
} }
Rule::options => { FilterParser::Rule::options => {
for option_pair in inner_pair.into_inner() { for option_pair in inner_pair.into_inner() {
if option_pair.as_rule() == Rule::option { if option_pair.as_rule() == FilterParser::Rule::option {
let mut option_name = None; let mut option_name = None;
let mut option_value = None; let mut option_value = None;
for option_inner in option_pair.into_inner() { for option_inner in option_pair.into_inner() {
match option_inner.as_rule() { match option_inner.as_rule() {
Rule::option_name => { FilterParser::Rule::option_name => {
option_name = Some(option_inner.as_str().to_string()); option_name = Some(option_inner.as_str().to_string());
} }
Rule::option_value => { FilterParser::Rule::option_value => {
option_value = Some(parse_option_value(option_inner.as_str())?); option_value = Some(parse_option_value(option_inner.as_str())?);
} }
_ => {} _ => {}