All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Made BASE_URL configurable via COMCHECK_API_URL environment variable
- Logging implementation to replace print statements
- Custom exception classes for better error handling
- Comprehensive API documentation
- Additional examples and tutorials
- Fix import path documentation in init.py
- Security: Remove .env from version control
- Initial release of COMcheck Web API Python client
- Core API service layer with httpx HTTP client
- High-level client interface (COMcheckClient)
- Project CRUD operations (get, list, update)
- Building component management:
- Envelope operations (walls, roofs, windows, doors, skylights)
- Building area operations
- Lighting, HVAC, and control systems
- Energy simulation support:
- Start simulation
- Check simulation status
- Retrieve simulation results
- Compliance checking before simulation
- Type-safe Pydantic models for all data structures
- Context manager support for automatic resource cleanup
- Project template and default constants
- Data managers for building areas and envelope components
- Utility functions for project operations
- Comprehensive examples:
- Client operations (simulation, user functions)
- Data manager usage
- Project operations
- Development tooling:
- Black code formatter
- MyPy type checking
- Pre-commit hooks
- pytest test framework
- Schema generation from COMcheck API
- Package management with uv
- httpx >= 0.27.0 (HTTP client)
- pydantic >= 2.12.5 (data validation)
- jsonschema >= 4.23.0 (schema validation)
- python-dotenv >= 1.0.0 (environment configuration)
- types-jsonschema >= 4.23.0 (type stubs)
- black >= 26.1.0 (code formatting)
- datamodel-code-generator >= 0.54.1 (type generation)
- mypy >= 1.19.1 (type checking)
- pre-commit >= 4.5.1 (git hooks)
- pytest >= 9.0.2 (testing)
- Python >= 3.12
- API key must be provided manually (no OAuth flow yet)
- Some print() statements used instead of proper logging
- Limited error handling with custom exceptions
None (initial release)
This is the first alpha release of the COMcheck Web API Python client. The library provides a clean, type-safe interface for interacting with the COMcheck Web API to perform building energy code compliance checks.
Key Features:
- Easy-to-use client interface
- Full project lifecycle management
- Building component operations
- Energy simulation and compliance checking
- Type-safe with Pydantic models
- Well-documented with examples
Not Yet Stable: This is an alpha release. The API may change in future versions. Not recommended for production use without thorough testing.
What's Next:
- API stabilization for v1.0.0
- Enhanced documentation
- More examples and tutorials
- Performance optimizations
- Better error handling
Initial release - no migration needed.
None yet.
For detailed technical improvements and roadmap, see docs/IMPROVEMENTS.md For version control strategy, see docs/VERSION_CONTROL.md