Skip to content
This repository has been archived by the owner on Sep 5, 2022. It is now read-only.

Releases: fundevogel/knv-tools

v0.9.0

09 Nov 17:08
Compare
Choose a tag to compare

Features

  • Detach subtasks get & search from group database

Changes

  • Update README

Fixes

  • Fix invoices being merged multiple times
  • Fix tax detection using regex

v0.8

17 Jun 16:33
Compare
Choose a tag to compare

This release brings various changes & A LOT of new features:

Features:

  • Adds new task group acc
  • Adds interactive accounting mode
  • Adds watermark to matched PDF invoices
  • Adds support for BWD, EDV & collective invoices
  • Adds session support for accounting mode
  • Adds contact data from payments in task contacts
  • Adds support for invoice session data
  • Adds accounting subtask report
  • Adds class Invoices
  • Adds own Payments classes for pp & vb
  • Adds exports for new structure classes
  • Adds session management
  • Adds watermark to matched PDF invoices
  • Adds support for Volksbank payments regarding KNV invoices
  • Adds database subtask search
  • Adds support for months in CLI tasks
  • Adds gross values
  • Adds default value for credentials
  • Adds acc subtask show

Changes:

  • Adjusts name of payment amount to match other gateways
  • Combines database subtasks, now using arguments
  • Detects cashback payments
  • Exposes debit/credit property in invoices & payments
  • Harmonizes __init__ hooks
  • Improves overall readability & reduce redundancy
  • Indicates degree of accuracy when matching payments
  • Introduces tree-like data composition
  • Makes task match a subtask of new group acc
  • Makes helper function convert_number into utility
  • Makes helper function convert_date into utility
  • Makes create_path work with files & directories
  • Makes file globs case-insensitive
  • Merges JSON loading methods
  • Merges invoice processing architecture
  • Moves accounting methods to class Molecule
  • Moves CLI helper functions to dedicated module
  • Moves timestamp generation to utility functions & clean code
  • Simplifies fitbis invoice handling
  • Splits normalize into string & number methods
  • Splits invoices into revenues & expenses
  • Splits PDF creation from acc task prepare
  • Reinstates accounting subtask match
  • Readds raw data to volksbank data
  • Renames convert_nan to number2string & extend its functionality
  • Replaces concatenated strings with format() statements
  • Replaces number2string logic with regex matching
  • Removes (now deprecated) class BaseClass
  • Removes Maker classes & move helpers to class Component
  • Removes deprecated string replacements
  • Removes extension early, taking care of uppercase
  • Restructures db subtask rebuild
  • Rewrites accounting methods regarding tax reports
  • Rewrites class Command to Processor
  • Rewrites data structures
  • Rewrites accounting methods regarding tax reports
  • Rewrites class Session
  • Rewrites filter method to output object instead of list

Fixes:

  • Fixes filter method not respecting quarter
  • Fixes phone number formatting
  • Fixes non-existing directories when creating PNG graphs
  • Fixes bug where missing quarter leads to empty results
  • Fixes filterBy method return typehint

.. and eight issues were closed, as well 🎉

v0.7

02 Jun 10:57
Compare
Choose a tag to compare

This release not only changes the license to GPL v3, it brings many new features and improved algorithms:

Features

  • Adds base class BaseClass
  • Adds class Webservice
  • Adds data processing to class Invoices
  • Adds database subtask get for retrieving data
  • Adds subtasks to db rebuild for each data type
  • Adds support for regular PayPal payments

Changes

  • Make class Invoice a subclass of Command
  • Rename class Shopkonfigurator to KNV
  • Move prop data & method get to class BaseClass
  • Move method convert_nan to class Command for broader availability
  • Improve data structure for Shopkonfigurator data
  • Improve match_payments algorithms
  • Use invoice data instead of re-parsing invoice files
  • Switch to dictionary-based data storage
  • Remove modules payments & receiver
  • Remove UTF-8 declarations

Fixes

  • Fix bug where taxes are empty lists
  • Fix bug when coupons are used as payment
  • Fix dates being wrong way round in method match_dates

v0.6

27 May 18:51
97bd5d5
Compare
Choose a tag to compare

With this release, the project structure - once again - changes significantly, allowing for better scalability, (somewhat loosely) applying the Command design pattern. In other news:

Features

  • Add class Invoices
  • Add method parse to class Invoices, including tax detection
  • Add method matching to class Volksbank
  • Add new base class Receiver
  • Add class Shopkonfigurator

Changes

  • Refactor classes in Command design pattern
  • Merge processing & algorithm classes
  • Improve initialization in BaseClass & Database
  • Improve matching algorithms in classes Paypal & Volksbank
  • Reactivate ranking & contacts generation
  • Restructure modules
  • Remove regex config options

Fixes

  • Fix method invoice2number & invoice regex
  • Fix ignored date parameters when matching payments
  • Fix misformatting when dealing with taxes

v0.5

21 May 15:59
8f7d3ff
Compare
Choose a tag to compare

First of all, this release migrates payments, orders & infos to classes. It also features many little improvements & fixes besides that:

Features

  • Adds payment gateway 'Volksbank'
  • Adds BaseClass class
  • Adds invoice helpers for extracting IDs & dates
  • Adds global option 'VKN'
  • Add support for skipping rows when loading CSV
  • Add support for thousands separator
  • Add support for keeping 'blocked' (= irrelevant) payments

Changes

  • Group 'algorithm' modules
  • Convert several options to class props
  • Convert matching functions to class 'Matching'

v0.4

16 May 16:41
Compare
Choose a tag to compare

This release brings full control over configuration via CLI and extends configurability using a global config file, brings the matching algorithm to near 100% success rate while fixing many bugs.

Features

  • Adds full control of config options via CLI
  • Adds (simple) bar charts for sales ranking
  • Adds ZIP file extraction for invoices
  • Adds exits if database is empty

Changes

  • Improves matching algorithm by considering transaction code when matching payments
  • Renames convert_cost to convert_number not being limited to currency
  • Groups processor modules
  • Combines loading mechanisms in new merge_data function

Fixes

  • Fixes setup.py script
  • Fixes misplaced helper functions
  • Fixes development directories in .gitignore
  • Fixes rare cases of duplicate entries
  • Fixes regular payments being processed/imported
  • Removes deprecated export script
  • Removes invoice_file option

v0.3

11 May 08:50
54b092a
Compare
Choose a tag to compare

This release

  • adds full config file support for ~/.config/knv-cli/config
  • adds blocklist support when creating mailing lists
  • adds verbose output when -v / --verbose is enabled
  • moves some stuff around & cleans things up

v0.2

08 May 15:48
Compare
Choose a tag to compare

This release

  • introduces command groups db (database tasks) and ex (extraction tasks)
  • adds new ex command contacts, extracting contact information (formerly knv-mailing-helper)
  • adds new db command flush, clearing the database

v0.1

07 May 20:57
Compare
Choose a tag to compare

The initial release supports

  • importing payment data (from PayPal™), Orders & OrdersInfo data (from KNV's Shopkonfigurator)
  • matching payment data & invoices (formerly done by knv-pypal)
  • ranking sold articles