All notable changes to this project will be documented in this file.
knockoff-factory
adheres to Semantic Versioning.
4.4.x
Releases - 4.4.0 | 4.4.14.3.x
Releases - 4.3.0 | 4.3.1 | 4.3.24.2.x
Releases - 4.2.0 | 4.2.14.1.x
Releases - 4.1.04.0.x
Releases - 4.0.0
1.9.x
Releases - 1.9.01.8.x
Releases - 1.8.1 | 1.8.01.7.x
Releases - 1.7.01.6.x
Releases - 1.6.01.5.x
Releases - 1.5.1 | 1.5.01.4.x
Releases - 1.4.01.3.x
Releases - 1.3.01.2.x
Releases - 1.2.01.1.x
Releases - 1.1.0
- Updated 3rd party packages to latest compatible versions
- Updated by Mohamed Abdul Huq Ismail in Pull Request #11
- Added support for python>=3.10.10
- Added by Mohamed Abdul Huq Ismail in Pull Request #10
- Refactored code to be compatible with SQLAlchemy v2.
- Updated by Mohamed Abdul Huq Ismail in Pull Request #10
- Refactored code to use absolute imports instead of relative imports.
- Deprecated by Mohamed Abdul Huq Ismail in Pull Request #10
- Removed support for python<3.10.10.
- Removed by Mohamed Abdul Huq Ismail in Pull Request #10
- Removed knockoff.testing_postresql in favor of knockoff.utilities.testing_postgresql.
- Removed by Mohamed Abdul Huq Ismail in Pull Request #10
- Removed knockoff.utilities.functools.abstractproperty2to3.
- Removed by Mohamed Abdul Huq Ismail in Pull Request #10
- Removed dependency on six which was required for py23 compatibility.
- Removed by Mohamed Abdul Huq Ismail in Pull Request #9
- Updated dependency-injector version to resolve poetry lock issue with six <=1.15.0.
- Updated by Mohamed Abdul Huq Ismail in Pull Request #9
- Fixed backwards compatibility issue in KnockoffContainer with sqlalchemy breaking change for create_engine's
positional arg changing into a kwarg, url.
- Fixed by Gregory Yu in Pull Request #7
- Fix KnockoffDB class so that it actually skips inserts where insert=False for a node
- Fixed by Gregory Yu in Pull Request #7
- Fix KnockoffTableFactory so that if you pass next_strategy_factory it won't complain about also providing next_strategy_callable
- Fixed by Gregory Yu in Pull Request #7
- io utilities for parallelizing writes to sql with joblib
- Added by Gregory Yu in Pull Request #6
- Added rename and drop parameters for KnockoffTable
- Added by Gregory Yu in Pull Request #6
- Added support for MySQL to TempDatabaseService (
knockoff.tempdb.setup_teardown:mysql_setup_teardown
)- Added by Gregory Yu in Pull Request #6
- Added reflect_schema method to KnockoffDatabaseService
- Added by Gregory Yu in Pull Request #6
- Moved
knockoff.testing_postgresql
modules toknockoff.utilities.testing.postgresql
- Updated by Gregory Yu in Pull Request #6
- Parallelized DefaultDatabaseService inserts
- Updated by Gregory Yu in Pull Request #6
- Moved existing yaml based cli examples to examples/legacy
- Updated by Gregory Yu in Pull Request #6
- Renamed KnockoffTable.build_record method to KnockoffTable._build_record declaring it as private by convention
- Updated by Gregory Yu in Pull Request #6
- Added docstrings for KnockoffTable, ColumnFactory and CollectionsFactory
- Updated by Gregory Yu in Pull Request #6
- Fixed DefaultDatabaseService's reflect_table method for MySql
- Updated by Gregory Yu in Pull Request #6
- Documentation and jupyter notebook for the
knockoff run
CLI- Added by Gregory Yu in Pull Request #5
- Added default configurations for
knockoff run
CLI with environment variable override options- Added by Gregory Yu in Pull Request #5
- Moved clear_env_vars from
knockoff.orm
toknockoff.utilities.environ
- Updated by Gregory Yu in Pull Request #5
- Fixed issue where
knockoff run
CLI was not using the temp db created with the--ephemeral
flag- Fixed by Gregory Yu in Pull Request #5
Note: The python package and docker image for this version was released as 4.1.1.
- Add --ephemeral flag for
knockoff run
CLI to create temp database for loading knockoff configuration from sdk- Added by Gregory Yu in Pull Request #4
- Add unit tests for KnockoffDB.build and
knockoff run
CLI- Added by Gregory Yu in Pull Request #4
- Documentation and jupyter notebook for TempDatabaseService
- Added by Gregory Yu in Pull Request #4
- Documentation and jupyter notebook for KnockoffDB
- Added by Gregory Yu in Pull Request #4
- Moved legacy YAML based knockoff cli from README.md to legacy.MD
- Updated by Gregory Yu in Pull Request #4
- CollectionsFactory for providing factory functions that return multiple columns
- Added by Gregory Yu in Pull Request #2
- Documentation and jupyter notebook for KnockoffTable
- Added by Gregory Yu in Pull Request #2
- ColumnFactory for providing factory functions instead of requiring as a tuple (column, factory)
- Added by Gregory Yu in Pull Request #1
build
method for KnockoffDB to enable building dataframes without inserting into DB- Added by Gregory Yu in Pull Request #1
- Unit tests for column and collection factories
- Added by Gregory Yu in Pull Request #1
run
CLI command for loading data into database from sdk configuration- Added by Gregory Yu in Pull Request #1
- Add Blueprint class to sdk for more composable configuration
- Added by Gregory Yu in Pull Request #1
- Added unit tests for knockoff.utilities.mixin
- Added by Gregory Yu in Pull Request #1
- Added tempdb module and TempDatabaseService class
- Added by Gregory Yu in Pull Request #1
- Made CLI extensible with injectable subcommands
- Updated by Gregory Yu in Pull Request #1
- Moved previous CLI to
legacy
subcommand for loading data into database using yaml configuration- Updated by Gregory Yu in Pull Request #1
- Renamed knockoff.utilities.mixin:FactoryMixin to knockoff.utilities.mixin:ResourceLocatorMixin
- Updated by Gregory Yu in Pull Request #1
- Remove dependency on python-interface, use abc instead
- Updated by Gregory Yu in Pull Request #1
- Updated internal knockoff fixtures to use TempDatabaseService
- Updated by Gregory Yu in Pull Request #1
- Fixed legacy CLI command by resolving breaking changes in sqlalchemy engine interface
- Fixed by Gregory Yu in Pull Request #1
- Update version of package to release to public pypi
- Updated by Mohamed Abdul Huq Ismail
- Utilities for date intervals, sql engine builder and regex
- Added by Mohamed Abdul Huq Ismail
- Python2 Support
- Deprecated by Mohamed Abdul Huq Ismail
- Test failures due to faker v8.1
- Fixed by Mohamed Abdul Huq Ismail
- dag_service and dependency handling for KnockoffDB
- Added by Gregory Yu
- SDK interface to simplify configuration
- Updated by Gregory Yu
- Python sdk for simple table configuration and pytest fixture setup
- Added by Gregory Yu
- knockoff.testing_postgresql for unit testing postgres
- Added by Gregory Yu
- Default engine builder setting host instead of uri
- Fixed by Gregory Yu
--version
flag to cli- Added by Gregory Yu
- Python3 compatibility
- Fixed by Gregory Yu
- Prototype io to read sql query that returns query result as pandas dataframe
- Added by Gregory Yu
- Functionality to generate periods part using Intervals
- Added by Gregory Yu
- Utilities to clear default knockoff environment variables
- Added by Gregory Yu
- Allow registering databases configured by engine builders in the yaml
- Added by Gregory Yu
- Adding unique constraint on prototypes
- Fixed by Gregory Yu
- Knockoff class for interface with library instead of cli
- Added by Gregory Yu
- Enabled loading prototypes using io strategy
- Added by Gregory Yu
- Only attempt to create databases and users if provided in config
- Fixed by Gregory Yu
- Parallelize writes for sql sink
- Added by Gregory Yu
- read_multi_parquet to read multiple parquet files
- Added by Gregory Yu
- Use psycopg2 instead of psycopg2-binary
- Updated by Gregory Yu
- Added injectable dump strategy for tables.
- Currently supporting
- sql: pandas dataframe to_sql
- parquet: pandas dataframe to_parquet
- Added by Gregory Yu
- Currently supporting