This document reviews the licenses of all major dependencies to ensure compatibility with ELF's Apache 2.0 license.
Apache 2.0 License Compatibility:
- ✅ Compatible with MIT, BSD, ISC licenses
- ✅ Compatible with Apache 2.0 (same license)
- ✅ Compatible with most open source licenses
⚠️ Some GPL licenses may require additional consideration
| Package | Version | License | Compatibility | Notes |
|---|---|---|---|---|
| langgraph | >=0.4.3 | MIT | ✅ Compatible | Workflow orchestration framework |
| openai | >=1.78.1 | Apache 2.0 | ✅ Compatible | OpenAI API client |
| pydantic | >=2.11.4 | MIT | ✅ Compatible | Data validation library |
| pyyaml | >=6.0.2 | MIT | ✅ Compatible | YAML parsing library |
| typer | >=0.15.3 | MIT | ✅ Compatible | CLI framework |
| python-dotenv | >=1.0.0 | BSD-3-Clause | ✅ Compatible | Environment variable loading |
| rich | >=14.0.0 | MIT | ✅ Compatible | Terminal formatting library |
| anthropic | >=0.51.0 | MIT | ✅ Compatible | Anthropic API client |
| mcp[cli] | >=1.9.1 | MIT | ✅ Compatible | Model Context Protocol |
| prompt-toolkit | >=3.0.51 | BSD-3-Clause | ✅ Compatible | Interactive command line |
| claude-code-sdk | >=0.0.10 | MIT | ✅ Compatible | Claude Code SDK |
| Package | Version | License | Compatibility | Notes |
|---|---|---|---|---|
| pytest-asyncio | >=1.0.0 | Apache 2.0 | ✅ Compatible | Async testing support |
| pytest | >=8.3.5 | MIT | ✅ Compatible | Testing framework |
| mypy | >=1.16.0 | MIT | ✅ Compatible | Static type checking |
The following major transitive dependencies have been verified for license compatibility:
| Package | License | Compatibility | Purpose |
|---|---|---|---|
| langchain-core | MIT | ✅ Compatible | Core LangChain functionality |
| httpx | BSD-3-Clause | ✅ Compatible | HTTP client library |
| click | BSD-3-Clause | ✅ Compatible | CLI utilities (via typer) |
| jinja2 | BSD-3-Clause | ✅ Compatible | Template engine |
| requests | Apache 2.0 | ✅ Compatible | HTTP library |
All dependencies are compatible with Apache 2.0 license.
- Primary licenses found: MIT (majority), Apache 2.0, BSD-3-Clause
- Compatibility status: ✅ All compatible with Apache 2.0
- Risk level: Low - all standard open source licenses
- Action required: None - proceed with open source release
- No license changes needed - all dependencies are compatible
- Attribution - Current LICENSE file properly acknowledges NVIDIA AgentIQ influence
- Future monitoring - Use tools like
pip-licensesto track dependency changes - Dependency updates - Review licenses when adding new dependencies
To verify current dependency licenses:
# Install license checker
uv pip install pip-licenses
# Check all package licenses
pip-licenses --format=markdown --with-urls
# Check for GPL licenses specifically
pip-licenses | grep -i gpl || echo "No GPL licenses found"ELF's dependency stack is fully compatible with the Apache 2.0 license. All dependencies use permissive open source licenses (MIT, BSD, Apache 2.0) that allow for commercial use, modification, and redistribution under Apache 2.0 terms.
Status: ✅ APPROVED FOR OPEN SOURCE RELEASE
Last Updated: 2024-12-17