Stack Upgrade Analyzer
A tool for analyzing code compatibility issues when upgrading technology stacks.
Features
- Multi-Stack Support: Analyze code compatibility for various technology stacks (Node.js, Java, Python, etc.)
- Breaking Changes Documentation: Fetch comprehensive breaking changes documentation between versions
- Codebase Analysis: Analyze your codebase for compatibility issues using AWS Bedrock
- Detailed Reports: Generate detailed reports of compatibility issues with recommendations
Installation
pip install stack-upgrade-analyzer
Requirements
- Python 3.7+
- AWS CLI configured with access to Bedrock
- Perplexity API key (for fetching breaking changes documentation)
Configuration
Before using the tool, configure your API keys:
stack-upgrade-analyzer config
This will prompt you to enter your Perplexity API key and AWS configuration.
Usage
Fetch Breaking Changes
# Fetch breaking changes between Node.js versions
stack-upgrade-analyzer get-changes-cmd --stack node --current-version 14.0 --upgrade-version 16.0
# Fetch breaking changes between Java versions
stack-upgrade-analyzer get-changes-cmd --stack java --current-version 11 --upgrade-version 17
Analyze Codebase
# Analyze a Node.js codebase
stack-upgrade-analyzer analyze-changes-cmd --changes-file changes/node/14.0_16.0_changes.md --dir /path/to/your/project --stack node
# Analyze a Java codebase
stack-upgrade-analyzer analyze-changes-cmd --changes-file changes/java/11_17_changes.md --dir /path/to/your/project --stack java
Supported Stacks
- Node.js
- Java
- Python
- Ruby
- C#
- PHP
How It Works
- Fetch Breaking Changes: The tool uses the Perplexity API to fetch comprehensive breaking changes documentation between versions.
- Analyze Codebase: The tool analyzes your codebase for compatibility issues using AWS Bedrock.
- Generate Report: The tool generates a detailed report of compatibility issues with recommendations.
License
MIT
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Metadata
Release files for stack-upgrade-analyzer 1.1.12
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| stack_upgrade_analyzer-1.1.12.tar.gz | 31.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| stack_upgrade_analyzer-1.1.12-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 76.4 kB
Release files / stack_upgrade_analyzer-1.1.12.tar.gz
| Download URL | stack_upgrade_analyzer-1.1.12.tar.gz |
|---|---|
| Size | 31.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
097740e007b555840e678232475e7c6a2148921dafdf3abcfc8cb83f0c9dc390
|
|
BLAKE2b-256 checksum How to use checksums |
6cb83f3576f67739536c8f5d9068c4c8d4fb7a5b8b967c7161dfa9278b58f1dd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.2
|
Release files / stack_upgrade_analyzer-1.1.12-py3-none-any.whl
| Download URL | stack_upgrade_analyzer-1.1.12-py3-none-any.whl |
|---|---|
| Size | 44.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4ab1aa8cfddb9632db18938ef69b2d7a00e210881d3bbb83ac462c5ee5b8e0e9
|
|
BLAKE2b-256 checksum How to use checksums |
f05cc6ef5724b4e966a3a3fc348502f2777a0894370abe5b57bc8387e42751b3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.2
|