Skip to content

v0.2.3

Choose a tag to compare

@junclemente junclemente released this 15 Apr 21:35
· 42 commits to main since this release

[v0.2.3] - 2025-04-15

Added

  • Example usage notebook: examples/eda_workflow.ipynb for demonstrating full EDA flow.
  • New centralized help system:
    • Unified help() entry point in jcds/__init__.py.
    • make_module_help() utility in jcds/utils.py using globals().
    • All submodules (eda, aws, dataio) now support contextual help:
      jcds.eda.help("quick_report")
      jcds.aws.help()
  • New utilities in eda.inspect:
    • Variable inspection: show_constantvars, show_highcardvars, get_dtype_summary, show_memory_use
    • Type detection: show_datetime_columns, show_possible_datetime_columns, show_mixed_type_columns, count_id_like_columns
  • Comprehensive unit tests for all eda.inspect functions using reusable fixtures in conftest.py.
  • New reports module (jcds.reports):
    • data_info(df, show_columns=False) — detailed dataset summary
    • data_cardinality(df, show_columns=False) — variable cardinality diagnostics
    • Includes full docstrings and modular registration in __init__.py

Changed

  • Added DeprecationWarning to legacy functions scheduled for removal in v0.3.0.
  • Updated .gitignore to exclude test datasets and notebooks.
  • Refactored submodule __init__.py files to use the centralized help() system.
  • Updated jcds/__init__.py to explicitly expose eda, aws, and dataio via __all__.
  • Ensured delayed imports in module help() functions to prevent circular dependencies.
  • Refactored tests/test_inspect.py to use shared fixtures in conftest.py.
  • Registered data_info, data_cardinality, and help() in jcds/reports/__init__.py.
  • Added module-level docstring to jcds/reports/__init__.py to enable API documentation.
  • Updated docs/api.md to include the jcds.reports section.

Fixed

  • Fixed test_get_dtype_summary to match string-based dtype format (e.g., "int").
  • Corrected test argument for show_possible_datetime_columns.
  • Silenced deprecation warning in get_dtype_summary by avoiding deprecated pandas API.

Removed

  • Deleted obsolete personal test datasets from tests/datasets/.
  • Deleted unused tests/integration/ folder.