Changelog¶
All notable changes to hier-config-cli will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased¶
Added¶
- Comprehensive documentation site with MkDocs
- Detailed integration guides for Nornir, Ansible, and CI/CD
- Development guides for contributing, testing, and code quality
0.2.0 - 2024-01-XX¶
Added¶
- Support for FortiOS platform (requires hier-config 3.4.0+)
- Python 3.13 support
- Modern type annotations using Python 3.10+ syntax
Changed¶
- Upgraded to hier-config 3.4.0
- Improved type checking with mypy
- Enhanced code quality with ruff linting
- Applied Python 3.10+ type annotation style
Fixed¶
- Resolved mypy type checking errors
- Fixed ruff linting issues including exception chaining
- Improved code documentation and type hints
0.1.0 - 2024-01-XX¶
Added¶
- Initial release of hier-config-cli
- Core commands:
remediation,rollback,future,list-platforms,version - Support for multiple platforms: ios, nxos, iosxr, eos, junos, vyos, hp_comware5, hp_procurve, generic
- Multiple output formats: text, json, yaml
- Verbose and debug logging modes
- Comprehensive test suite with pytest
- Type safety with mypy
- Code formatting with black
- Linting with ruff
- CI/CD integration with GitHub Actions
Platform Support¶
- Cisco IOS
- Cisco NX-OS
- Cisco IOS XR
- Arista EOS
- Juniper JunOS
- VyOS
- HP Comware5
- HP ProCurve
- Generic platform
Dependencies¶
- hier-config ^3.3.0
- click ^8.1.7
- pyyaml ^6.0.2
- Python ^3.10
Release Process¶
Version Numbering¶
We follow Semantic Versioning:
- MAJOR version for incompatible API changes
- MINOR version for new functionality in a backwards compatible manner
- PATCH version for backwards compatible bug fixes
Release Checklist¶
For maintainers releasing a new version:
- Update version in
pyproject.toml - Update version in
src/hier_config_cli/__main__.py - Update
CHANGELOG.mdwith release notes - Commit changes:
git commit -m "Release v0.x.x" - Create git tag:
git tag v0.x.x - Push changes:
git push origin main --tags - GitHub Actions will automatically publish to PyPI
Upgrade Guide¶
Upgrading from 0.1.x to 0.2.x¶
No breaking changes. Simply upgrade:
Upgrading Dependencies¶
If you're using hier-config-cli in your project:
Deprecation Policy¶
- Features marked as deprecated will be removed in the next major version
- Deprecation warnings will be issued for at least one minor version before removal
- Deprecated features will be documented in the changelog
Future Plans¶
Planned Features¶
- Configuration templates support
- Batch processing improvements
- Interactive mode
- Configuration validation rules
- Compliance reporting
- More platform support
Under Consideration¶
- Plugin system for custom platforms
- Web UI for configuration management
- REST API server mode
- Configuration backup/restore
- Diff visualization
Community Contributions¶
We welcome contributions! See Contributing Guide for details.
Contributors¶
Thank you to all contributors who have helped improve hier-config-cli!
- James Williams (@networktocode) - Creator and maintainer
Security Updates¶
Security vulnerabilities are taken seriously. See Security Policy for reporting procedures.
Links¶
- GitHub Repository: netdevops/hier-config-cli
- PyPI Package: hier-config-cli
- Documentation: hier-config-cli.readthedocs.io
- Issue Tracker: GitHub Issues
- Discussions: GitHub Discussions