pub fn parse_date(date_str: &str) -> Result<NaiveDate, ParseError>
Parse a date string in YYYY-MM-DD format
Returns chrono::ParseError if the date string is not in the expected format
chrono::ParseError