v0.1.3 | Documentation, Python Enhancements & Version Bump#14
Merged
v0.1.3 | Documentation, Python Enhancements & Version Bump#14
Conversation
- Document 5 critical public functions/methods in models.rs: * ModelPricing::new() - create new pricing structure * ModelPricing::with_cache() - set cached input token costs * ModelCapabilities::new() - create model capabilities * ModelBenchmarks::has_benchmarks() - check benchmark availability * get_registry_stats() - get global model registry statistics - Add dedicated "Documentation" job to CI/CD that enforces RUSTDOCFLAGS="-D warnings" to catch rustdoc errors early and ensure documentation quality - Add docs.rs badge to README.md for easy public access to API documentation This establishes documentation practices and ensures continuous documentation quality checks. Additional struct field and enum variant documentation can be addressed incrementally in future releases.
The models.rs file contains the internal Provider enum with 134 variants representing the global model registry. These are auto-generated/maintenance entries that don't require individual documentation. All user-facing public API types (Message, ContentBlock, CompletionRequest, EmbeddingRequest, etc.) are already properly documented with field-level documentation and examples.
…tion ## Rust - Documented 5 critical public functions (ModelPricing, ModelCapabilities, etc.) - Added CI/CD documentation check job with RUSTDOCFLAGS="-D warnings" - Added docs.rs badge to README ## Python (PEP 735 & Modern Tooling) - Created pdm.toml with PEP 735 dependency-groups support (dev, docs) - Lowered abi3 from py39 to py38 for broader Python 3.8+ compatibility - Added [tool.ty] configuration for strict type checking - Updated MyPy, Ruff, Black to target Python 3.8 - Added Python 3.8 to classifiers ## Version Updates - Rust: 0.1.2 → 0.1.3 - Python: 0.1.2 → 0.1.3 (with abi3-py38) - Node.js: 0.1.2 → 0.1.3 ## Documentation - Comprehensive CHANGELOG.md entry for v0.1.3 - Technical details on documentation strategy and Python compatibility Related to: pdf_oxide issue #28 improvements and user analysis
- src/client.rs: base_url example URL - src/models.rs: Source documentation URLs (Anthropic, OpenAI, Google, Mistral, AWS) - src/providers/chat/openai_compatible.rs: base_url example URL - src/providers/chat/cloudflare.rs: Models documentation URL - src/providers/chat/latamgpt.rs: Status check URL Fixes RUSTDOCFLAGS="-D warnings" cargo doc check
- llmkit-node/Cargo.toml: Add strip=true and codegen-units=1 to release profile Reduces binary size from ~293MB to ~30-40MB (5-10x reduction) - llmkit-python/Cargo.toml: Same optimizations for Python bindings This removes debug symbols from compiled binaries, making npm/PyPI packages much smaller without affecting functionality.
a3380de to
7666250
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Comprehensive release preparing llmkit for v0.1.3 with significant improvements across Rust documentation, Python tooling, and broader version support.
Key Features
🦀 Rust Documentation Infrastructure
RUSTDOCFLAGS="-D warnings"🐍 Python Enhancements (PEP 735 & Modern Tooling)
pdm.tomlwith structured dependency-groups (dev, docs)abi3frompy39topy38for Python 3.8+ compatibility[tool.ty]configuration, updated MyPy/Ruff/Black to target Python 3.8📦 Version Updates
Changes
Testing
Related Issues
Addresses improvements identified in comparison with pdf_oxide issue #28