Releases: Monkey-Market/quipus
v0.3.2
Full Changelog: v0.3.1...v0.3.2
What's Changed
New Types for Template Replacements Validation:
- Added
ReplacementsDict
TypedDict andValidReplacementValue
Union type toquipus/utils/types.py
for validating template replacements.
Updates to __init__.py
:
- Updated
quipus/__init__.py
to include the newReplacementsDict
andValidReplacementValue
in the imports and__all__
list. - Updated
quipus/utils/__init__.py
to export the new types.
Updates to smtp_delivery.py
:
- Imported
ReplacementsDict
andValidReplacementValue
inquipus/services/smtp_delivery.py
. - Modified the
with_body_path
method to useOptional[dict[str, ValidReplacementValue]]
for thereplacements
parameter and added type checks for replacement values.
v0.3.1
Full Changelog: v0.3.0...v0.3.1
What's Changed
Enhancements to CSVSource:
quipus/data_sources/csv_source.py
:- Updated the
quote_char
method to handleNone
values gracefully. - Modified the
load_data
andget_columns
methods to useencoding.value
instead ofencoding
.
- Updated the
Enhancements to MongoSource:
quipus/data_sources/mongo_source.py
:- Added a check in the
__init__
method to raise aValueError
if neitherdb_config
norconnection_string
is provided.
- Added a check in the
Enhancements to MySQLSource:
quipus/data_sources/mysql_source.py
:- Removed the
connection_string
parameter from the__init__
method and adjusted the initialization to use onlydb_config
.
- Removed the
v0.3.0
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
(Migratingpylint
to this linter.)pymongo
mysql-connector-python
openpyxl
-
Dependencies to be removed:
pylint
Deprecated:
- Removed the
PostgreSQLDataSource
class in favor of the newPostgreSQLSource
class. - Removed the
CSVDataSource
andXLSXDataSource
classes in favor of the newCSVSource
andXLSXSource
classes. - Removed the
DataFrameDataSource
class in favor of developing more specific data source classes to manage DataFrame's. - Removed tests for the deprecated modules.
v0.2.4
What's Changed
- feat: integrate polars into quipus by @jose-jaen in #47
New Contributors
- @jose-jaen made their first contribution in #47
Full Changelog: v0.2.3...v0.2.4
v0.2.3
What's Changed
Full Changelog: v0.2.2...v0.2.3
v0.2.2
v0.2.0
v0.1.1
What's Changed
- Ft/add base structure by @pandasoncode in #7
- [REF] Template class with new attributes and updated main by @pandasoncode in #27
- ft/smtp-certificate-delivery by @J1Loop in #29
- [FT] Add SFTPDelivery class for managing file uploads via SFTP by @J1Loop in #30
- Ref/migrate to poetry by @pandasoncode in #31
- Ft/add manager by @pandasoncode in #32
- [FT] Add S3 delivery by @J1Loop in #33
- [FT] Add PostgreSQL data source by @J1Loop in #34
- [FT] Add CSV data source using pandas by @J1Loop in #35
- Cicd/lint actions by @J1Loop in #37
- [FT] Add XLSX data source by @J1Loop in #38
- ref/linting by @J1Loop in #40
- ref/pypi_prep by @J1Loop in #41
- [FIX] Including base_url for WeasyPrint's HTML by @J1Loop in #42
New Contributors
- @pandasoncode made their first contribution in #7
Full Changelog: https://github.com/Monkey-Market/quipus/commits/v0.1.1