diff --git a/CHANGELOG.md b/CHANGELOG.md index 7aa84446..a31b2f65 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,9 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [Unreleased] +## [0.2.7] - 2026-02-09 + +### Added / Changed - **Snowflake Connector for Data Ingestion** (PR #276 by @Sameer6305): - Native Snowflake connector with multi-authentication (password, OAuth, key-pair, SSO) @@ -19,6 +21,17 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Added Apache Arrow exporter with explicit schemas, entity/relationship export, compression support - Integrated with export module and method registry, Pandas/DuckDB compatible - 20 unit tests + 1 integration test, complete documentation with examples + +- **Comprehensive Benchmark Suite with Regression CLI** (PR #289 by @ZohaibHassan16, @KaifAhmad1): + - 137+ benchmarks across all 10 Semantica modules (Input, Core, Storage, Context, QA, Ontology, etc.) + - Environment-agnostic design with robust mocking system for CI/CD compatibility + - Statistical regression detection using Z-score analysis with configurable thresholds + - Automated performance auditing via GitHub Actions workflow + - Comprehensive documentation suite (benchmarks.md, architecture guides, usage examples) + - Zero breaking changes, production-ready with ultra-fast text processing (>10,000 ops/s) + - Added benchmark runner CLI: `python benchmarks/benchmark_runner.py` + +## [Unreleased] ## [0.2.6] - 2026-02-03 diff --git a/RELEASE.md b/RELEASE.md deleted file mode 100644 index 9f15159e..00000000 --- a/RELEASE.md +++ /dev/null @@ -1,56 +0,0 @@ -# Release Process for Semantica - -This document outlines the steps to release a new version of the Semantica framework. - -## 1. Versioning Policy - -Semantica follows [Semantic Versioning (SemVer)](https://semver.org/). -- **MAJOR** version for incompatible API changes. -- **MINOR** version for functionality added in a backwards compatible manner. -- **PATCH** version for backwards compatible bug fixes. - -## 2. Pre-release Checklist - -Before releasing, ensure: -- [ ] All tests pass: `pytest` -- [ ] Documentation is up to date in `docs/` and `MkDocs` config. -- [ ] `CHANGELOG.md` is updated with the latest changes. -- [ ] Version is updated in: - - `semantica/__init__.py` - - `pyproject.toml` - - `docs/citation.md` (BibTeX entry) - -## 3. Release Steps - -### Automated Release (Recommended) - -The project uses GitHub Actions for automated releases to PyPI. - -1.29. **Tag the commit**: Create a new git tag for the version (e.g., `v0.2.3`). - ```bash - git tag -a v0.2.3 -m "Release v0.2.3" - git push origin v0.2.3 - ``` -2. **GitHub Action**: The `Release` workflow will automatically trigger, build the package, create a GitHub Release, and publish to PyPI using Trusted Publishing. - -### Manual Release - -If you need to release manually: - -1. **Build the package**: - ```bash - python -m build - ``` -2. **Verify the build**: - ```bash - twine check dist/* - ``` -3. **Upload to PyPI**: - ```bash - twine upload dist/* - ``` - -## 4. Post-release - -- Verify the new version is available on [PyPI](https://pypi.org/project/semantica/). -- Check the [GitHub Releases](https://github.com/your-org/semantica/releases) page for the new release notes. diff --git a/docs/citation.md b/docs/citation.md index 38e85370..f7b1580c 100644 --- a/docs/citation.md +++ b/docs/citation.md @@ -12,22 +12,22 @@ How to cite Semantica in academic papers and research. author = {Hawksight AI}, year = {2026}, url = {https://github.com/Hawksight-AI/semantica}, - version = {0.2.6}, + version = {0.2.7}, doi = {10.5281/zenodo.XXXXXXX} } ``` ### APA -Hawksight AI. (2026). *Semantica: An Open Source Framework for Semantic Layers and Knowledge Engineering* (Version 0.2.6) [Computer software]. https://github.com/Hawksight-AI/semantica +Hawksight AI. (2026). *Semantica: An Open Source Framework for Semantic Layers and Knowledge Engineering* (Version 0.2.7) [Computer software]. https://github.com/Hawksight-AI/semantica ### MLA -Hawksight AI. *Semantica: An Open Source Framework for Semantic Layers and Knowledge Engineering*. Version 0.2.6, GitHub, 2026, https://github.com/Hawksight-AI/semantica. +Hawksight AI. *Semantica: An Open Source Framework for Semantic Layers and Knowledge Engineering*. Version 0.2.7, GitHub, 2026, https://github.com/Hawksight-AI/semantica. ### Chicago -Hawksight AI. *Semantica: An Open Source Framework for Semantic Layers and Knowledge Engineering*. Version 0.2.6. GitHub, 2026. https://github.com/Hawksight-AI/semantica. +Hawksight AI. *Semantica: An Open Source Framework for Semantic Layers and Knowledge Engineering*. Version 0.2.7. GitHub, 2026. https://github.com/Hawksight-AI/semantica. ### IEEE -Hawksight AI, "Semantica: An Open Source Framework for Semantic Layers and Knowledge Engineering," Version 0.2.6, GitHub, 2026. [Online]. Available: https://github.com/Hawksight-AI/semantica +Hawksight AI, "Semantica: An Open Source Framework for Semantic Layers and Knowledge Engineering," Version 0.2.7, GitHub, 2026. [Online]. Available: https://github.com/Hawksight-AI/semantica --- diff --git a/pyproject.toml b/pyproject.toml index 6c142969..371c0f6d 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "semantica" -version = "0.2.6" +version = "0.2.7" description = "🧠 Semantica - An Open Source Framework for building Semantic Layers and Knowledge Engineering" readme = "README.md" license = { text = "MIT" } @@ -101,9 +101,10 @@ parse-docling = ["docling>=1.0.0"] # ---- Database Connectors ---- db-snowflake = ["snowflake-connector-python>=3.0.0", "cryptography>=3.4.0"] +db-arrow = ["pyarrow>=10.0.0"] db-all = [ - "semantica[db-snowflake]" + "semantica[db-snowflake,db-arrow]" ] # ---- Embedding / Models ---- diff --git a/semantica/__init__.py b/semantica/__init__.py index 31a526e9..f53ef637 100644 --- a/semantica/__init__.py +++ b/semantica/__init__.py @@ -10,7 +10,7 @@ Main exports: - Config: Configuration management """ -__version__ = "0.2.6" +__version__ = "0.2.7" __author__ = "Semantica Contributors" __license__ = "MIT"