Skip to content

Latest commit

 

History

History
1728 lines (1123 loc) · 78.3 KB

File metadata and controls

1728 lines (1123 loc) · 78.3 KB

CHANGELOG

v1.0.1 (2026-08-14)

v1.0.1-beta.3 (2026-08-14)

Bug Fixes

  • Stage release lock updates (6e8fac9)

v1.0.1-beta.2 (2026-08-14)

Bug Fixes

  • Keep release lock metadata current (9593bf4)

v1.0.1-beta.1 (2026-08-14)

Bug Fixes

  • Align Python 3.10 support documentation (70537bc)

  • Support CPython 3.10 release parity (47c9a1c)

v1.0.0-beta.1 (2026-08-13)

  • Initial Release

Unreleased

Breaking Changes

  • Rename the distribution and import package to fastretrieval; the legacy QWEN3_EMBED_* environment variables remain supported as deprecated aliases.

Features

  • Add the Fastretrieval successor package identity and documentation for its multi-model retrieval contract.

v1.13.0 (2026-08-08)

v1.13.0-beta.1 (2026-08-08)

Bug Fixes

  • Accept empty and whitespace-only text in check_input_length (#966, 35a525a)

  • Add regex search fast path to input sanitization (cc6a184)

  • Adopt better-semantic-release for built-in release guards (d0427d0)

  • Assert the link refusal without removing tarfile.data_filter (#958, 33ed74e)

  • Clamp embedding batch size to the ONNX graph batch axis (#970, d9dc0be)

  • Clear the GCS staging path whatever type it is (#963, f426f9c)

  • Correct mention gate expression (balanced parens + precedence) (#914, 8764f0c)

  • Document backend-only repository limitation (26e07a5)

  • Drop code_quality from the main ruleset (#935, a9c7489)

  • Drop rangeStrategy from update-type package rules (#929, 3426710)

  • Enforce fix(deps) semantic commit prefix in renovate config (4c7e45f)

  • Fail the release when the computed version already exists on PyPI (#897, 59b22ed)

  • Format README code blocks the way ruff 0.16 wants them (#964, 20c8adc)

  • Gate oc mention job on comment author write access (#914, 8764f0c)

  • Let a fixed PR title clear the title gate (#959, 74239b3)

  • Let Renovate lowercase its own PR titles (#965, b1b00a9)

  • Let the integration cache bootstrap itself and report its own progress (#972, 15695bb)

  • Make a hanging integration test name itself instead of dying silently (#972, 15695bb)

  • Make renovate automerge effective (isolated groups, digest+lockfile automerge, 7-day cooldown) (722455d)

  • Optimize FP16 to FP32 Casting (d26a5fe)

  • Optimize regex substitution loops with search fast-path in gguf cross encoder (2278801)

  • Pin GitHub Action references to commit SHAs (#925, 94ccbdf)

  • Pin rangeStrategy on delayed packageRules to fix renovate artifacts failure (#920, 3b51822)

  • Point the custom-reranker test at a model its code path can score (#972, 15695bb)

  • Refuse tar symlinks that escape the model cache (#958, 33ed74e)

  • Regenerate uv.lock after rebasing dependency bumps onto main (#930, f1b419a)

  • Replace noise-dominated retrieval assertion in test_full_pipeline (#967, 2894b2b)

  • Restore Python 3.11 support and stop ty failing CI on warnings (#898, fda5944)

  • Reuse mask sum in mean pooling (261de55)

  • Run opencode bot on hosted runners (#913, f4e300d)

  • Scope the MAX_INPUT_LENGTH override to this test module (#971, 25b411f)

  • Stop injecting a fake llama_cpp into sys.modules for the whole session (#971, 25b411f)

  • Stop the worker pool deadlocking when its consumer walks away (#972, 15695bb)

  • Stop two test modules from mutating global state at import time (#971, 25b411f)

  • Sum integer masks before float cast in mean pooling (00ef2aa)

  • Trigger the integration suite on every test file that holds one (#972, 15695bb)

  • Use fixed-point string replacement for input sanitization (6d39950)

  • deps: Lock file maintenance (#962, 7a19f2d)

  • deps: Lock file maintenance (#918, 766c765)

  • deps: Lock file maintenance (#915, c7991f7)

  • deps: Lock file maintenance (#911, f6b32b5)

  • deps: Lock file maintenance (#908, 21adfd0)

  • deps: Update actions/checkout action to v7 (#907, 46a7042)

  • deps: Update actions/setup-python action to v7 (#931, 24e2260)

  • deps: Update astral-sh/setup-uv action to v8.3.2 (8101060)

  • deps: Update astral-sh/setup-uv action to v9 (#932, a2d7fec)

  • deps: Update minor dependencies (#930, f1b419a)

  • deps: Update patch dependencies (#901, 6120505)

  • deps: Update ruff to >=0.16.1 (#961, 8d0e329)

Features

  • Add bot PR governance to this repo (#960, 9aff668)

  • Add opencode github agent (responds to /oc) (364704e)

  • Add PR-title conventional-commit gate + no-bump release warning (#922, aa47bfc)

  • Add review-learnings store the automated reviewer must obey (e3201f1)

  • Auto-respond only to issues and PRs opened by outside people (3a90360)

  • Reviewer must obey .github/review-learnings.md (cfbdd93)

  • Run the integration suite in CI (#972, 15695bb)

  • Sync cross-promo section (#938, f693e9f)

Performance Improvements

  • Optimize mean pooling sum reduction by reusing float cast mask (261de55)

v1.12.1 (2026-07-05)

v1.12.1-beta.1 (2026-07-05)

Bug Fixes

  • Fast-path scalar sigmoid with math.exp for batch size 1 (53744a1)

  • Sum integer attention mask before float cast in mean pooling (6702cd4)

  • Validate GCS download host via parsed.hostname to prevent SSRF (8d1c946)

  • deps: Lock file maintenance (b751f96)

  • deps: Update non-major dependencies (28697e2)

v1.12.0 (2026-07-01)

Bug Fixes

  • Add check_worker_health test (dccf2f0)

  • Add cumulative and fallback-path tar bomb tests for decompress_to_cache (8d99154)

  • Add edge-case tests for iter_batch (too-large size, empty iterable, zero-size non-consumption) (18c6666)

  • Add error test for _validate_tar_member path traversal (5589597)

  • Add error-path test for check_input_length (715fb16)

  • Add tests for regression test for over-strict bug (f4158f2)

  • Add tests for too many arguments: make_model_description (d46931c)

  • Add tests for untested error path in _save_file_metadata (2b8a50b)

  • Correct doc rot in README intro and stale embedding docstrings (#800, 29c95ea)

  • Correct last_token_pool for mixed-padding, empty, and all-zero attention masks (07f19ee)

  • Cover export_to_onnx (2f434c9)

  • Cover internal worker loop and cleanup in parallel_processor (413fbe5)

  • Cover join_or_terminate states (5b186a6)

  • Cover onnx_text_model (0a07dad)

  • Drop unused llama_cpp import in GGUF cross-encoder dependency check (dfa6e97)

  • Drop unused OnnxProvider/PathInput re-export from common package (c6eb038)

  • Extract yes/no token logits without full-vocab slice (b862da4)

  • Guard _cleanup_worker leak on queue.close error + cover (c12e397)

  • Import TextCrossEncoder from source module and drop redundant re-export (fc4f490)

  • Mismatched dictionary key lookup for repo files (447d5e6)

  • Missing cache for supported models in TextEmbedding (788e65d)

  • Missing edge case: is_safe_path with relative paths (0a137e4)

  • Missing edge case: semi_ordered_map with empty stream (30222d1)

  • Missing error test for parallel worker cleanup (5cec788)

  • Missing tests for custom_model.py (fc2d6af)

  • Missing tests for export.py (b7cc5c0)

  • O(1) last_token_pool index lookup (8224a13)

  • Pin numpy <2.5 to keep Python 3.11 support (4ad79c3)

  • Propagate custom reranker registry to spawned workers (#799, 8367ad7)

  • Re-raise worker exceptions after draining the queue + harden worker health detection (df6c877)

  • Reduce _rerank_pairs params via kwargs (2f2c9b1)

  • Reduce HF download arg count via model param (cce375f)

  • Refresh lockfile (renovate maintenance) (754b199)

  • Remove unused future annotations import in gguf_embedding (7b96533)

  • Resolve #792 (hermes-solve) (#793, 77c95f2)

  • Ruff-format test_parallel_processor.py after merge (#873, 5f6f1b1)

  • Single-pass real-token count (cb74697)

  • Split download_files_from_huggingface (793fc8b)

  • Split OnnxTextCrossEncoder init setup (325341a)

  • Split retrieve_model_gcs into helpers (a1c77e0)

  • Update non-major dependencies (1bf021b)

  • deps: Update non-major dependencies (#782, 42970bc)

  • model-management: Reduce argument count in _download_with_retries and related helpers (cce375f)

  • utils: Robust last_token_pool handling for mixed padding and edge cases (07f19ee)

Chores

  • deps: Lock file maintenance (#801, c9daf37)

  • deps: Update actions/checkout action to v7 (#783, 3b1691c)

  • deps: Update actions/setup-python digest to ece7cb0 (#841, f6a8672)

  • deps: Update dawidd6/action-send-mail action to v18 (#844, 703d51c)

v1.12.0-beta.3 (2026-06-13)

Bug Fixes

  • Offline cache lookup fails when revision is unpinned (#738, e2a3a93)

  • deps: Update non-major dependencies (#727, 39ca34b)

Chores

  • deps: Update step-security/harden-runner digest to 9af89fc (#726, 6c67087)

v1.12.0-beta.2 (2026-06-12)

Features

  • Add CustomRerankerSpec one-call BYO reranker registration (#736, 3520b57)

  • Sync cross-promo section (#735, 97cdf07)

v1.12.0-beta.1 (2026-06-12)

Bug Fixes

  • Add NOTICE retaining fastembed (Qdrant) attribution (#733, 5220b34)

  • Format test_export.py (#733, 5220b34)

  • Honor dim/MRL truncation on custom and pooled embedding paths (#733, 5220b34)

  • Make custom embedding models work under multiprocessing and case-insensitive (#733, 5220b34)

  • Remove orphaned Qodo pr-agent config (#731, bb29b63)

  • Restore PSR changelog generation and backfill version history (#732, d450791)

  • Skip parallel custom-model integration test on Windows spawn deadlock (#733, 5220b34)

Features

  • Add CustomModelSpec one-call BYO registration helper (#733, 5220b34)

  • Add HF-id to ONNX export helper with lazy optional deps (#733, 5220b34)

  • Document CustomModelSpec bring-your-own-model usage (#733, 5220b34)

  • Production-grade bring-your-own-model (BYO) support (#733, 5220b34)

v1.11.2-beta.3 (2026-06-11)

Bug Fixes

  • Add strict= to zip in reranker batch-invariance test (B905) (#730, 9b0860e)

  • Document reranker batch-invariance contract (#730, 9b0860e)

  • Reranker batch-invariant scores (#725) (#730, 9b0860e)

  • Score reranker texts per-row so scores are batch-invariant (#730, 9b0860e)

v1.11.2-beta.2 (2026-06-10)

Bug Fixes

  • Add caching for _list_supported_models in TextCrossEncoder (#715, b4abe65)

Performance Improvements

  • Optimize O(N) list iteration in _check_model_exists (#717, 9d064ab)

Testing

  • Add coverage for OverflowError in Qwen3CrossEncoderGGUF (#724, e23d7bf)

v1.11.2-beta.1 (2026-06-10)

Bug Fixes

  • Correct doc drift in agents, security, conduct, contributing (#714, 9e6038f)

v1.11.1 (2026-06-09)

v1.11.1-beta.1 (2026-06-09)

Bug Fixes

  • Gitignore bot/merge junk artifacts (.orig/.rej/.patch/.diff/.cover/.bak) (#690, 363004c)

  • Relax tokenizers floor to >=0.22.0 for transformers co-installability (#692, 4ef7f41)

  • deps: Update non-major dependencies (#694, 2e3b472)

Chores

  • deps: Update codecov/codecov-action action to v7 (#695, ea46046)

v1.11.0 (2026-06-07)

v1.11.0-beta.1 (2026-06-07)

Bug Fixes

  • Add _fetch_repo_files tests for model management (#633, 106d4f3)

  • Bump idna to 3.17 in lockfile maintenance (#644, d348689)

  • Correct over-strict tar member validation on Windows (#635) (#645, 410e4b3)

  • Update huggingface-hub to 1.17.0 and ruff to 0.15.15 (#643, 5cb6c9d)

  • deps: Lock file maintenance (df1459d)

  • deps: Update actions/checkout digest to df4cb1c (065f01a)

  • deps: Update non-major dependencies (ea41108)

Features

  • Add test for check_input_length with extremely long input (2c94b22)

  • Add test for parallel processor worker exception handling (3c8c89a)

  • Add test for ValueError in model_management._fetch_repo_files (0673e03)

  • Add tests for ImportError in _check_llama_cpp (6e5c087)

  • Add tests for model snapshot metadata parsing errors (dd6a120)

  • Add tests for OverflowError in gguf_cross_encoder._score_text (773f52b)

Refactoring

  • Reduce cyclomatic complexity in download_model (#639, 04800e8)

v1.10.1 (2026-05-28)

Bug Fixes

Chores

v1.10.0 (2026-05-26)

Chores

v1.10.0-beta.1 (2026-05-24)

Bug Fixes

  • Drop unused providers/device_ids/lazy_load params in GgufEmbedding init (5a57c96)

  • Restrict tarfile members to reg/dir/sym/link types + emulate data filter (7f31c35)

  • Ruff format test_model_description.py for CI green (c5f2e09)

  • Simplify init parameter list in onnx_text_model + parallel_processor (c448f77)

  • Simplify _download_from_gcs parameter list via dataclass (63898f1)

  • Simplify _instantiate_onnx_session parameter list (2b60926)

  • Simplify add_custom_model parameter list via config dataclass (f109006)

  • Simplify CustomTextEmbedding init parameter list (49022e7)

  • Simplify gguf_cross_encoder + gguf_embedding init parameter list (786423e)

  • Use dict map for O(1) repo_files lookup in _verify_files_from_metadata (a2b373d)

  • Use math.exp instead of np.exp for single scalar sigmoid in cross_encoder (f38f489)

  • deps: Bump huggingface-hub to >=1.14.0,<2.0 (c7c81af)

  • deps: Bump urllib3 from 2.6.3 to 2.7.0 (#592, a7a0837)

  • deps: Refresh uv lock file maintenance (#611, 9977e93)

  • deps: Update non-major dependencies (#590, 0bcba87)

  • security: Iterate tar members to prevent decompression-bomb OOM (#617, 3320879)

  • security: Prevent symlink-based permission modification on cache dir (#585, f8bcd13)

  • security: Thread-safe requests session initialization (#588, c094c9b)

  • text: Reduce parameter count and fix formatting (49022e7)

  • text: Reduce parameter count in CustomTextEmbedding.init (49022e7)

Chores

  • deps: Lock file maintenance (#619, 4806929)

  • deps: Update actions/create-github-app-token digest to bcd2ba4 (#597, 6d2efbd)

  • deps: Update actions/dependency-review-action action to v5 (#586, df81194)

  • deps: Update codecov/codecov-action digest to e79a696 (#618, e5db9bf)

  • deps: Update dependency ty to >=0.0.39 (#622, be96922)

  • deps: Update step-security/harden-runner digest to ab7a940 (#602, dc0f13c)

Features

  • Add missing-value test for deprecated_tar_struct ModelSource property (8b5caed)

  • Add Table of contents heading + auto-generated link list (Spec E Wave 2) (42f126d)

  • Add test for ModelManager _get_expected_md5 (8d2b472)

  • Add test for PooledNormalizedEmbeddingWorker init_embedding (a3caf3c)

  • Sync cross-promo section (#583, 30d0add)

Refactoring

  • Reduce parameters in add_custom_model (f109006)

  • Reduce parameters in add_custom_model and fix lint (f109006)

Testing

  • text: Add unit test for PooledNormalizedEmbeddingWorker.init_embedding (a3caf3c)

v1.9.2 (2026-05-06)

v1.9.2-beta.1 (2026-05-06)

Bug Fixes

  • Align Python version statements with pyproject.toml requires-python (#545, e5b54ec)

  • In-place division in mean_pooling for ~15-20% perf gain (#548, fa280b1)

  • deps: Update dawidd6/action-send-mail action to v17 (#547, 58a700c)

  • deps: Update dependency llama-cpp-python to >=0.3.22 (#558, 528f425)

  • deps: Update dependency ty to >=0.0.33 (#546, ddba364)

  • deps: Update non-major dependencies (#549, 8c8c2a5)

  • deps: Update non-major dependencies (#543, e51677b)

Chores

  • deps: Update step-security/harden-runner digest to a5ad31d (#555, 82fa9c9)

v1.9.1 (2026-04-27)

Bug Fixes

  • Scope CD notify-downstream app token to n24q02m profile repo (957bb1a)

  • Sweep doppler/infisical refs to skret SSM (80eff17)

  • deps: Update non-major dependencies (#535, 0742e96)

Chores

  • deps: Update astral-sh/setup-uv action to v8 (#532, 1964aa9)

v1.9.0 (2026-04-21)

Bug Fixes

  • Add diacritic preservation pre-commit hook (#521, 31bac94)

  • Add tests for text_cross_encoder_base (#474, 4d76cfa)

  • Batch ONNX inference in Qwen3CrossEncoder._onnx_embed_texts (#513, 93704ad)

  • Bump dev dependency ty to 0.0.32 (fbb6e31)

  • Bump requires-python to 3.11 for numpy 2.4 compat (be15ee9)

  • Bump step-security/harden-runner digest to 8d3c67d (00cecfd)

  • Drop Python 3.10 from CI matrix after requires-python bump (5248b3d)

  • Enforce iter_batch upper boundary limits (#468, b14bb91)

  • Ignore coverage.xml and htmlcov artifacts (117bf8d)

  • Left-pad reranker batches + last-non-pad pooling in yes/no scoring (b9a5aa6)

  • Make path assertions platform-agnostic for Windows CI (82f688a)

  • Optimize iter_batch list slicing by branching list vs tuple (6079dd9)

  • Prevent SSRF via open redirects in GCS model downloads (57f27d5)

  • Reduce code duplication in _load_onnx_model and add parallel execution support (#520, f6fd794)

  • Refactor overly long download_files_from_huggingface into helpers (#509, 1f31b51)

  • Remove AI traces (.jules / superpowers content — belongs in private n24q02m/.superpower repo) (c167f6a)

  • Remove emoji from source code to fix Windows CI (#468, b14bb91)

  • Sync local changes from workspace (978ca96)

  • Use sqrt(v.dot(v)) for 1D L2 norm in gguf embedding (3d0f321)

  • deps: Bump actions/create-github-app-token digest to 1b10c78 (#492, 57a9aac)

  • deps: Bump non-major dependencies (huggingface-hub 1.11, ruff, ty) (#469, 39f0fb9)

  • deps: Bump step-security/harden-runner digest to 6c3c2f2 (#470, f75777a)

  • deps: Update non-major dependencies (#467, 8ff84d8)

Chores

  • Ignore AI assistant traces (8b7ff69)

Features

  • Add cross-OS CI matrix (ubuntu/windows/macos) (493c64a)

  • Add tests for TextEmbedding.embed delegation (05ed227)

  • Add tests for TextEmbedding.passage_embed and query_embed delegation (ab46efe)

  • Auto-create downstream bump issues on stable release (5da0d78)

  • Cache TextEmbedding/TextCrossEncoder model description lookups (O(1)) (145e5d9)

  • Migrate code review from Qodo to CodeRabbit (#426, b1a4136)

  • Replace 2-class softmax with sigmoid on logit difference in cross encoders (904fe36)

  • model_management: Add desc to tqdm progress bar (#400, c0ddd14)

Performance Improvements

  • Optimize GCS download chunk size to 1MB (#516, c4b0805)

  • Optimize iter_batch for indexable sequences (#468, b14bb91)

Testing

  • Add coverage for _download_from_hf exception handling (#502, aad1270)

  • Add coverage for text_embedding_base.py (#476, aaacbb3)

  • Fix missing coverage for decompress_to_cache (#514, 94a8ccf)

  • utils: Add tests for input length validation (#517, 3f317b9)

v1.8.0 (2026-04-04)

Bug Fixes

  • Hardlink path traversal bypass in tarfile extraction (#395, c1d0c76)

Features

  • Notify downstream repos on stable release (#395, c1d0c76)

v1.7.0 (2026-04-03)

Bug Fixes

Continuous Integration

  • Sync workflow SHA pins, Qodo vertex_ai config, and VERTEXAI_LOCATION (5a199b5)

Features

  • Notify downstream repos on stable release (#366, cf04fc2)

v1.6.0 (2026-03-31)

Bug Fixes

  • Pin pre-commit hooks to commit SHA (7f64ff1)

  • Pin third-party GitHub Actions to SHA hashes (7517dbf)

  • Remove pr-title-check job from CI (68ec2c9)

  • Standardize README structure (412ba62)

  • cd: Remove empty env blocks from OIDC migration (5c031bd)

  • cd: Replace GH_PAT with GitHub App installation token (bd47ba1)

  • cd: Use PyPI OIDC trusted publishing instead of PYPI_TOKEN (c069253)

  • ci: Consolidate SMTP_USERNAME and NOTIFY_EMAIL into one secret (4943bb3)

  • ci: Consolidate SMTP_USERNAME+PASSWORD into SMTP_CREDENTIAL (dccb016)

  • ci: Use Vertex AI WIF instead of GEMINI_API_KEY for code review (cbf982d)

Chores

  • Add .code-review-graph/ to .gitignore (255afd5)

  • Add .env to .gitignore for secret protection (1b79f3f)

  • Add Infisical project configuration (a9ec91c)

  • Remove Infisical config (empty project deleted) (f540f68)

  • deps: Lock file maintenance (f03b866)

  • deps: Pin dependencies (#302, 86f1afc)

  • deps: Update actions/create-github-app-token action to v3 (#304, c3e23e2)

  • deps: Update codecov/codecov-action action to v6 (#305, c33a1eb)

  • deps: Update codecov/codecov-action digest to 75cd116 (#298, b3c4f40)

  • deps: Update dependency requests to v2.33.0 [security] (e1cead3)

Documentation

  • Add CLAUDE.md with project conventions and structure (a9f19c8)

  • Fix CLAUDE.md discrepancies (c963935)

Features

  • Notify downstream repos on stable release (259afd8)

  • Use batched tokenization in Qwen3CrossEncoder (#287, 9a236f1)

Refactoring

  • 🧹 Code Health: Refactor export_model to fix overly long function (#315, 0803463)

Testing

  • Add cache checking fallback tests for model management (#321, 02288e5)

v1.5.1 (2026-03-20)

Bug Fixes

  • Add Device to public exports, update SECURITY.md (ed5b3e5)

Chores

  • Align CI/CD action versions (3cb68f5)

  • deps: Lock file maintenance (#279, 29bc4c4)

  • deps: Update codecov/codecov-action digest to 1af5884 (#280, 047c7f4)

  • deps: Update dawidd6/action-send-mail action to v16 (#278, 061b417)

v1.5.0 (2026-03-18)

Bug Fixes

  • Add debug logging to empty except block in model cache fallback (9ddda4a)

  • Add noqa to unused arguments in gguf_cross_encoder.py (#254, 64ca958)

  • Fix TOKEN_NO_ID mismatch and add input sanitization in GGUF reranker (9df0c3e)

  • Resolve formatting errors (#258, 8abb836)

  • Resolve lint errors for unused imports and sorting (#258, 8abb836)

  • Testing] Cover ImportError from builtins.import in _check_llama_cpp (#240, 465e700)

  • Testing] Test OSError/ValueError in HF download (#265, ee18b90)

  • 🧹 [code health improvement] Fix unused arguments in GGUF cross encoder (#260, b99bb6e)

  • 🧹 [code health] Format missing files and refactor _load_onnx_model (#264, a3e0e99)

  • 🧹 [code health] Format missing files and resolve typing issues (#264, a3e0e99)

  • 🧹 [code health] Refactor _load_onnx_model to reduce complexity (#264, a3e0e99)

  • 🧹 Code Health: Refactor download_model (#261, e5d9055)

  • 🧹 Suppress unused arg warnings in GGUF cross encoder (#260, b99bb6e)

  • 🧹 Suppress unused arg warnings in GGUF cross encoder and format code (#260, b99bb6e)

  • 🧹 Suppress unused argument warnings in Qwen3CrossEncoderGGUF (#254, 64ca958)

  • ci: Use pull_request_target for jobs requiring secrets (015199e)

Chores

  • deps: Lock file maintenance (#228, d44d363)

  • deps: Update astral-sh/setup-uv digest to e06108d (#225, 3b44efe)

  • deps: Update dawidd6/action-send-mail action to v14 (#233, e7f9e91)

Code Style

Features

  • Add missing edge cases for remove_non_alphanumeric (#242, 1ccae00)

  • Add tests for common types (#243, 5d1e462)

  • Add tests for OnnxTextEmbedding (#267, 189d9bc)

  • Testing improvement: Add parallel processor exception handling coverage (#258, 8abb836)

  • Testing] Test PooledEmbedding.mean_pooling (#252, 7db4d0a)

Refactoring

  • Extract nested functions from download_files_from_huggingface (#266, 9df5da8)

Testing

  • Add missing tests for onnx embedding (#267, 189d9bc)

  • Add model inference tests for Qwen3CrossEncoder (#246, d9bd783)

  • Add multiprocessing exception handling tests (#258, 8abb836)

  • Add tests for common type aliases and Device enum (#243, 5d1e462)

  • Add tests for PooledEmbedding.mean_pooling method (#252, 7db4d0a)

  • Fix OnnxTextEmbeddingWorker test to appease type checker (#267, 189d9bc)

  • Fix ruff formatting errors (#243, 5d1e462)

v1.4.3 (2026-03-13)

Bug Fixes

  • Disable ORT memory pattern to prevent RAM growth with varying sequences (c265805)

Documentation

  • Add YesNo reranker variant to README (32ba3f5)

v1.4.2 (2026-03-13)

Bug Fixes

  • YesNo model uses same HF repo as other variants (d6ba630)

v1.4.1 (2026-03-13)

Bug Fixes

  • Correct TOKEN_NO_ID (2132→2152) and add optimized YesNo model support (113cdd7)

Breaking Changes

  • TOKEN_NO_ID correction changes reranker scoring behavior.

v1.4.0 (2026-03-12)

Bug Fixes

  • Cap onnxruntime <1.24 for Python 3.10 (no wheels available) (971108e)

v1.4.0-beta.1 (2026-03-12)

Bug Fixes

  • Disable mise runtime updates in Renovate (a8b2271)

Documentation

  • Add v1.3.0 entry to CHANGELOG (d7fe8a1)

Features

  • Support Python 3.10-3.14 (5 latest versions) (aab129b)

v1.3.0 (2026-03-11)

Bug Fixes

  • Add .jules/ and JULES.md to gitignore (42a9ed1)

  • Add file integrity verification for GCS downloads (#221, 3582fbc)

  • Add MD5 hash verification for GCS file downloads (#221, 3582fbc)

  • Correct Qodo PR Agent ignore_pr_authors config (0ee787e)

  • Fix arbitrary file write via archive extraction (Tar Slip) (#218, ce7a251)

  • Fix insecure temporary directory creation (#212, a2ec057)

  • Fix unsafe file download via unvalidated URL (SSRF) (#203, 35df610)

  • Improve decompress_to_cache TarError handling test (#193, 00a48ba)

  • Improve metadata save error logging and add test (#224, d84cd31)

  • Remove commit-message-check job (410477d)

  • Revert Python to 3.13, fix Renovate config, add Q4F16/GGUF integration tests, fix model cache validation (3770fe8)

  • Standardize CI with PR title check, email notify, and templates (a4582b5)

  • Suppress Bandit B615 on offline snapshot_download (#222, 306f3b8)

  • Sync CI/CD configs and standardize templates (1643dd3)

  • Update Codecov badge in README.md (703a2dd)

  • ci: Fix Qodo PR review for external contributors (4034fab)

  • ci: Pin PSR v10, Python 3.13, Node 24, Java 21 in Renovate (d07b6be)

  • ci: Revert PSR v9 downgrade back to v10 (ee8e452)

  • deps: Update non-major dependencies (#166, 62f2064)

  • security: Add SSRF protection, revision pinning, and code quality improvements (67600c3)

Chores

Code Style

  • Format test file with ruff (#221, 3582fbc)

  • Format tests with ruff (#187, d3e998c)

  • 🧹 Run ruff format on qwen3_embed/parallel_processor.py (90f6386)

Continuous Integration

Documentation

  • Add related projects cross-references (c2d08ea)

  • Update docs for stable release - Production/Stable status, complete CHANGELOG, accurate README and AGENTS.md (dae3f2f)

Features

  • Add coverage for add_extra_session_options (#187, d3e998c)

  • Add test for _collect_file_metadata function (#186, 3731db9)

  • Add tests for DenseModelDescription valid and invalid dimension limits (#188, b204339)

  • Add tests for get_all_punctuation utility (#185, d8422d1)

  • Add unit tests for remove_non_alphanumeric utility (#223, c991044)

Testing

v1.2.0 (2026-03-01)

Bug Fixes

  • Add CI status badge to README (2f1a77a)

  • Add community files and replace SECURITY.md template (0efa84a)

  • Delete .jules directory (c72bd6d)

  • Increase test coverage to 92% and resolve typing errors (7658adf)

  • Make TextCrossEncoder.add_custom_model case-insensitive (#88, 30212f0)

  • Remove test artifact and ignore *.tar.gz files (982a6f0)

  • Standardize repo structure with enforce-commit hook and ty checker (b3190c2)

  • Update README badges with Codecov, tech stack, and engineering standards (b0d02eb)

  • Update ruff-pre-commit rev to v0.15.1 and fix formatting (419dfca)

  • ci: Fix Qodo Merge env variable dot notation bug (915a0a0)

  • ci: Fix Qodo model to gemini-3-flash-preview (e92717b)

  • ci: Fix syntax errors and correctly configure Qodo + Gemini 3 Flash (1e89e81)

  • ci: Move pr-agent config to .pr_agent.toml (7e11851)

  • ci: Update to supported Gemini 3 and 2.5 flash models (5eaeae7)

Chores

  • Add Gemini Code Assist style guide (66c60cc)

  • Apply bulk fixes for performance, security, and type checking (e90cae9)

  • Change Renovate schedule to daily 5am (7c0d535)

  • Remove CodeRabbit config, migrating to Gemini Code Assist (665d21b)

  • Update uv.lock (b144d88)

  • config: Migrate config renovate.json (e145c0e)

Documentation

  • Add AGENTS.md for AI coding agents (68b557c)

  • Standardize README with ProperCase title and bold tagline (bdb7e5d)

Features

  • Add Codecov coverage upload and CodeRabbit config (891201b)

  • Migrate to 2025-2026 tech stack (bun/uv/ty) (7b689e4)

  • ci: Add Renovate config for automated dependency updates (4e307b4)

  • ci: Add StepSecurity Harden-Runner to all workflow jobs (audit mode) (78358d5)

  • ci: Migrate to Qodo Merge AI Review (Gemini 3 Flash) (cdbd76b)

Testing

  • Add comprehensive test coverage for utilities and components (f1d2997)

v1.1.3 (2026-02-18)

Bug Fixes

  • Correct model identifiers from Qwen/ to n24q02m/ namespace (298405c)

v1.1.2 (2026-02-18)

Bug Fixes

  • GGUF Reranker Device.AUTO defaulting to CPU instead of GPU (684af12)

Chores

v1.1.1 (2026-02-17)

Bug Fixes

  • Auto-detect GPU for GGUF backend (Device.AUTO uses n_gpu=-1) (edb58bb)

Documentation

  • Add GPU acceleration section and fix CPU-only claim (add0204)

v1.1.0 (2026-02-17)

Chores

  • Standardize mise.toml (add node, ty check, UV_LINK_MODE, settings) (4ba23ef)

Features

  • Auto-detect DirectML GPU provider and improve logging (f400012)

v1.0.0 (2026-02-14)

Bug Fixes

  • cd: Remove build_command from PSR config (not available in PSR container) (d63c86b)

Chores

  • Migrate from release-please to python-semantic-release v10 (9a78411)

  • Sync beta manifest from stable [skip ci] (40d9c6d)

v0.2.1 (2026-02-14)

Chores

Continuous Integration

  • Allow GHSA-w8v5-vhqr-4h9v (diskcache, no patch available) (#5, 8d8dbc1)

Documentation

  • Update README with Q4F16 and GGUF variants (#5, 8d8dbc1)

Features

  • Add Q4F16 ONNX and GGUF model variant support (#5, 8d8dbc1)

  • Promote dev to main (v0.2.1-beta) (#5, 8d8dbc1)

Refactoring

  • Use dedicated *-GGUF HF repos for GGUF models (#5, 8d8dbc1)

v0.2.0 (2026-02-14)

  • Initial Release