Changelog¶
All notable changes to PyCompTox will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.4.0 - 2025-01-06¶
Added¶
- ExtraData API: New
ExtraDataclass for accessing reference counts and metadata get_data_by_dtxsid()- Get reference data for single chemicalget_data_by_dtxsid_batch()- Batch retrieval of reference data- MkDocs Documentation: Complete documentation site with Material theme
- API reference documentation using mkdocstrings
- User guides and tutorials
- Examples and best practices
- Jupyter Notebooks: Added
extra_data_examples.ipynbwith 9 examples - Tests: Complete test suite for ExtraData functionality
Changed¶
- Updated package version to 0.4.0
- Updated
__init__.pyto exportExtraDataclass
Fixed¶
- URL Construction Bug: Fixed URL joining issue in all API classes
- Changed endpoints from absolute paths (
/chemical/...) to relative paths (chemical/...) - Ensured
base_urlalways ends with/for properurljoinbehavior - Fixed issue where
/ctx-apiwas being dropped from URLs
0.3.0 - 2025-01-05¶
Added¶
- ChemicalProperties API: Complete implementation with 14 methods
- Property summaries (physchem and fate)
- Predicted properties (QSAR models)
- Experimental properties (measured data)
- Environmental fate properties
- Range searches and batch operations
- Modern Setup Configuration:
- Migrated to
pyproject.toml(PEP 621, 517, 518, 561) - Added CLI entry points (
pycomptox-setup) - Type checking support with
py.typedmarker - CLI Tool:
__main__.pywith commands: set- Save API keyshow- Display configurationtest- Test API connectivitydelete- Remove saved API key- Documentation:
CHEMICAL_PROPERTIES.md- Complete API documentationINSTALLATION.md- Installation guideMODERN_SETUP.md- Setup documentation- Tests: Comprehensive test suites for all modules
- Notebooks:
chemical_properties_examples.ipynbwith 10 examples
Changed¶
- Updated package structure to use modern Python packaging
- Replaced
setup.pywith minimal shim - Added optional dependencies for dev, notebook, and docs
0.2.0 - 2025-01-04¶
Added¶
- ChemicalDetails API: Complete implementation with 5 methods and 8 projection types
- Batch Operations: Added batch methods for all API classes
- Rate Limiting: Configurable delay between API calls
- API Key Management:
- Persistent storage of API keys
- Platform-specific config directories
- Helper functions:
save_api_key(),load_api_key(),delete_api_key() - Documentation:
CHEMICAL_DETAILS.md- Details API documentationIMPROVEMENTS_v0.2.0.md- Feature documentation- Tests: Test suites for details and batch operations
- Notebooks:
chemical_details_examples.ipynbwith 10 examples
Changed¶
- Improved error handling across all API classes
- Enhanced type hints and docstrings
0.1.0 - 2025-01-03¶
Added¶
- Chemical Search API: Initial implementation with 11 search methods
- Search by name, CASRN, InChIKey, SMILES, formula, and mass
- Batch search capabilities
- Project Structure:
- Package layout with
src/pycomptox/ - Basic
setup.pyconfiguration - MIT License
- README with basic usage
- Documentation:
CHEMICAL_SEARCH.md- Search API documentation- Initial examples
- Tests: Basic test suite
- Notebooks:
chemical_search_examples.ipynbwith 10 examples
Infrastructure¶
- GitHub repository setup
- Python package structure
- Dependencies: requests
[Unreleased]¶
Planned Features¶
- Additional API endpoints (if available from CompTox)
- Async support for concurrent requests
- CLI tools for common operations
- Data export utilities
- Integration examples with pandas/numpy
- Performance optimizations
Version Number Scheme¶
- Major (X.0.0): Breaking changes
- Minor (0.X.0): New features, backward compatible
- Patch (0.0.X): Bug fixes, backward compatible