Skip to content

v0.3.0

Compare
Choose a tag to compare
@pandasoncode pandasoncode released this 12 Nov 13:29
· 8 commits to main since this release

What's Changed

Full Changelog: v0.2.4...v0.3.0

Data Source Enhancements

New data source classes have been added to quipus to support various data sources. The new data source classes include:

  • DataSource (Base class for all data sources.)
    • DataBaseSource
      • MongoDBSource
      • MySQLSource
      • PostgreSQLSource
    • FileSource
      • CSVSource
      • XLSXSource
      • ParquetSource

All data sources normalize the output to a polars.DataFrame object. Reason being that polars is a fast and efficient DataFrame library that can handle large datasets. The polars.DataFrame object can be converted to a pandas.DataFrame object if needed as both libraries are compatible.

In addition to the new data source classes, some utils were added to support the new data source classes. This new utils include:

  • Connectable Abstract class representing a connectable object.
  • DBConfig data class to manage DB credentials.
  • EncodingType encoding types supported by some data sources.

Dependency Updates:

  • New dependencies:

    • ruff (Migrating pylint to this linter.)
    • pymongo
    • mysql-connector-python
    • openpyxl
  • Dependencies to be removed:

    • pylint

Deprecated:

  • Removed the PostgreSQLDataSource class in favor of the new PostgreSQLSource class.
  • Removed the CSVDataSource and XLSXDataSource classes in favor of the new CSVSource and XLSXSource classes.
  • Removed the DataFrameDataSource class in favor of developing more specific data source classes to manage DataFrame's.
  • Removed tests for the deprecated modules.