Releases: benjamin-awd/monopoly
Releases · benjamin-awd/monopoly
v0.11.0
Changelog
[0.11.0] - 2024-09-05
⛰️ Features
- (banks/hsbc) Add support for non-OCR credit statements
🛠️ Bug Fixes
- (write) Incorrect 'base' statement type in final result
🚜 Refactor
- (pdf) Make PdfDocument a child class of fitz.Document
- (pdf) Use file_path as first arg to PdfDocument
- (pipeline) Move parser & handler creation logic to extract
- Pass PdfPages instead of parser
- (pipeline) Move bank detection logic to CLI
- (detector) Move detector to banks namespace
- Remove unnecessary usage of pydantic dataclasses
- (pdf) Add metadata identifier attr to PdfDocument
- (banks/base) Fix type hint for identifiers
- (pdf) Lazily import ocrmypdf
- (pdf) Perform ocr based on metadata identifiers
- (pipeline) Move parser instantiation logic to CLI
- (pipeline) Allow custom document to be passed
📚 Documentation
- Remove false version from changelog
- (README) Add note about OCR feature
⚙️ Miscellaneous Tasks
- (generic) Add GenericParserError
- Remove unused import
- (pdf) Remove old get_byte_stream function
- Remove old mock_document fixture
- (constants) Remove case insensitive modifier from formats with no words
- (pdf) Improve ocrmypdf performance
- (pipeline) Shorten create_handler function signature
- (generic) Move GenericBank to generic init
- (pipeline) Import Transaction from statements namespace
- Rename generic/generic_handler to generic/handler
- Import from pymupdf instead of fitz
- Linting for ocr changes
Build
- (deps) Bump the deps group with 7 updates
- (deps) Add ocrmypdf as a system dependency
- (deps) Move ocrmypdf to extras
v0.10.10
Changelog
[0.10.10] - 2024-08-26
🚜 Refactor
- (generic) Make most common tuples into set instead of list
- (generic) Create separate class for pattern matching
- (constants) Make enums into top level file
⚙️ Miscellaneous Tasks
- Make CLI banner more concise
- (generic) Remove redundant typehint for date_regex_patterns
- (generic) Remove redundant results var
- (generic) Use self.pages directly instead of passing self.pages
- (generic) Rename vars/functions to use "spans" instead of tuples
- (constants) Move enums in config to statement
v0.10.9
Changelog
[0.10.9] - 2024-08-21
⛰️ Features
- (constants) Add RegexEnum class to automatically compile patterns
🚜 Refactor
- Prevent redundant get_statement() call
- (constants) Add case insensitive flag directly to date groups
- (banks) Use single StatementConfig class
- (banks) Shift responsibility of regex pattern creation to config class
📚 Documentation
- Update PDF_PASSWORDS env var info
- Add docstring for DateFormats
⚙️ Miscellaneous Tasks
- Add check for missing OCR layer
- (ci) Disable too-few-public-methods
v0.10.8
Changelog
[0.10.8] - 2024-08-17
🚜 Refactor
- (banks) Remove EncryptionIdentifier
- Use header patterns to identify statement type
- Use default factory instead of frozen for DateOrder
- Move PdfPasswords to pdf module
- Reduce type hint verbosity by using BaseStatement
v0.10.7
Changelog
[0.10.7] - 2024-08-11
🚜 Refactor
- (banks) Remove encryption identifier
⚙️ Miscellaneous Tasks
- (banks/sc) Add text identifier
v0.10.6
Changelog
[0.10.6] - 2024-08-11
🚜 Refactor
- Simplify bank detection function
📚 Documentation
- (README) Update information on PDF_PASSWORDS env var
Build
- (deps) Bump the deps group with 7 updates
v0.10.5
Changelog
[0.10.5] - 2024-08-03
⚙️ Miscellaneous Tasks
- Use simpler identifier for example bank
v0.10.4
Changelog
[0.10.4] - 2024-08-03
🛠️ Bug Fixes
- (publish) Trigger on push of tags or manual workflow
🚜 Refactor
- (handler) Add more descriptive error for missing credit config
- (write) Generate hash based on transactions
v0.10.3
Changelog
[0.10.3] - 2024-07-14
🛠️ Bug Fixes
- (cd/publish) Set release_to_pypi to true on push
- (banks/maybank) Add missing encryption identifier for credit statements
- (detector) Ensure pdf_property_identifiers are not bypassed
- (banks) Add identifiers for decrypted PDFs without encrypt dict
v0.10.2
Changelog
[0.10.2] - 2024-07-14
⛰️ Features
- (cli) Add verbose output for error messages
🛠️ Bug Fixes
- (pipeline) Explicitly call get_transactions() in extract
🚜 Refactor
- (statements/debit) Recalculate debit header for each page
- (statements/debit) Create separate has_debit_header property
- (statements/debit) Remove redundant typehint for match
- Store raw_text property in PdfDocument
- (statement) Move regex from func to init
- Move identifiers to separate file
- Split up constants across multiple files
- Use RunConfig class to hold run arguments
- (detector) Cache metadata_items()