Changelog¶
All notable changes to TabuLLM are documented here.
[1.4.0]¶
Added a Sphinx documentation site (Furo theme, MyST Markdown, autodoc/autosummary with Napoleon), published to GitHub Pages at https://asmahani.github.io/TabuLLM/. Covers the README as a landing page, full API reference for
tabullm.__all__, an examples page linking the two tutorial notebooks with their external requirements, and a paper/reproducibility page. A newdocsoptional dependency group and adocs.ymlCI workflow build the site (warnings as errors) on every PR/push and deploy it on pushes tomain.Fixed several stale and incorrect examples in public docstrings, found while building the documentation:
ClusterExplainer’s class docstring called a nonexistentGMMFeatureExtractor.fit_predict()and the obsoletecount_tokens_only=Trueargument (nowpreview=True);GMMFeatureExtractor’s example passed an unsupportedtext_columns=argument toTextColumnTransformer; several examples referenced undefined names (model,RandomForestClassifier,df,emb_model,chat_model) without importing or defining them. Examples are now self-contained and runnable (credentialed calls are noted in comments).Added the
Documentationlink to[project.urls], a documentation badge to the README, and set the GitHub repository homepage to the published docs site.Widened the supported
langchain-corerange to>=1.3,<1.6(from<1.5); CI now tests both the minimum supported line and the latest allowed release explicitly.Added the SoftwareX fraud-benchmark reproduction package (
paper_experiments/): pinned environment, run/summarise/plot scripts, and archived per-fold results, metrics, and rolled-up summaries. Added the published SoftwareX paper citation and DOI to the README.Excluded
paper_experiments/paper-requirements.txt(a pinned snapshot of the environment used for the paper’s benchmark runs) from Dependabot, since it is not meant to track upstream releases.
[1.3.0]¶
Added README badges for CI, coverage, PyPI version, supported Python versions, and license, and enabled Codecov uploads from the test workflow.
Reduced the core runtime dependency surface to
langchain-core; directlangchainandlangchain-communityrequirements were dropped because TabuLLM uses core abstractions plus provider-specific integration packages.Tightened the supported runtime window for the LangChain stack to the tested
langchain-core1.3.x-1.4.x series, with matching caps onnumpy,scipy,scikit-learn, andpydantic.Expanded CI to run the test suite across multiple LangChain minor lines and updated tests to use
langchain_core.embeddings.Embeddingsdirectly instead of the legacy compatibility shim.Added weekly Dependabot checks for Python dependencies and GitHub Actions so upstream changes surface as reviewable PRs before they reach users.
Breaking: the minimum supported
numpyversion is now 1.26, the minimum supportedpydanticversion is now 2.7, and the package no longer installs the umbrellalangchain/langchain-communitypackages as transitive runtime dependencies.
[1.2.1]¶
Fixed deprecated LangChain import in
embed.py(langchain.embeddings.base→langchain_core.embeddings).Removed phantom
pillowruntime dependency.
[1.2.0]¶
Removed
SphericalKMeansclass. For L2-normalized embeddings, sklearn’sKMeansis mathematically equivalent;GMMFeatureExtractorprovides strictly richer features for pipeline use.
[1.1.0]¶
Added multiple testing correction to
explain()via thecorrectionparameter ('bonferroni','holm','fdr_bh'). When set, aP-value (adjusted)column is appended to the per-cluster results and, whenobservation_statsis provided, to the stat-association table. Backward compatible: default isNone(no correction).
[1.0.3]¶
Fixed broken package installation (1.0.2 wheel was published without Python source files).
[1.0.2]¶
Fixed
__version__mismatch; aligned__init__.pywithpyproject.toml.
[1.0.1]¶
Switched fraud dataset download from Kaggle to Zenodo (no credentials required).
[1.0.0]¶
Initial release.