All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog
- Use ISO 3166-2 for regions (US, California: 'CA' -> 'US-CA')
calculate_tax_decimal
function to calculate tax for decimal numbers
- Bump depdenencies
- More comments to improve usability
- Cleanup exports: All important types are now re-exported in
lib.rs
TaxScenario.calculation_type
: UnnecessaryTaxType::CompoundTax
: Unnecessary
- Calculation of rates for Quebec (CA), B2C
- Improve handling when used as part of an API (snake_case, lowercase serialization)
- More explicit when something couldn't be found or matched
- Error handling: ProcessingError, DatabaseError
- TaxType, VatRate, TaxRate: Macro to Serialize and Deserialize
- Helper to load database with included rates
TaxDatabase::new()
- new
get_rates
function to access the rates directly
- Removed unnecessary
main.rs
file - Refactor tests to satisfy compiler warnings
- Input validation for countries and regions (states)