Skip to content

Releases: benjamin-awd/monopoly

v0.11.0

05 Sep 15:07
Compare
Choose a tag to compare

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

26 Aug 16:32
Compare
Choose a tag to compare

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

21 Aug 16:33
Compare
Choose a tag to compare

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

17 Aug 16:12
Compare
Choose a tag to compare

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

11 Aug 07:08
Compare
Choose a tag to compare

Changelog

[0.10.7] - 2024-08-11

🚜 Refactor

  • (banks) Remove encryption identifier

⚙️ Miscellaneous Tasks

  • (banks/sc) Add text identifier

v0.10.6

11 Aug 04:53
Compare
Choose a tag to compare

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

03 Aug 15:56
Compare
Choose a tag to compare

Changelog

[0.10.5] - 2024-08-03

⚙️ Miscellaneous Tasks

  • Use simpler identifier for example bank

v0.10.4

03 Aug 15:36
Compare
Choose a tag to compare

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

14 Jul 10:36
Compare
Choose a tag to compare

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

14 Jul 08:45
Compare
Choose a tag to compare

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()