A tool for analyzing code compatibility issues when upgrading technology stacks
Project description
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.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file stack_upgrade_analyzer-1.1.3.tar.gz.
File metadata
- Download URL: stack_upgrade_analyzer-1.1.3.tar.gz
- Upload date:
- Size: 31.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
aa5bfdf2bf8a8d720bf74a2a2fc116bf70e0e41b77d982d3b6dd9f64c642eca5
|
|
| MD5 |
aaa9baf2c1a41cf707545ff3805e04e8
|
|
| BLAKE2b-256 |
8f3666eef8f4ef59a36044cfa5016e7f567b239e221514f1f6a9f156d212e283
|
File details
Details for the file stack_upgrade_analyzer-1.1.3-py3-none-any.whl.
File metadata
- Download URL: stack_upgrade_analyzer-1.1.3-py3-none-any.whl
- Upload date:
- Size: 44.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
310d042e33da7d1ec31182fcd869c49c54ef36d6869df1e24edb81e489a4963d
|
|
| MD5 |
115a0048b62aaa436f5872d187933ff8
|
|
| BLAKE2b-256 |
94ed2ca21e18e63c9037f2e57ace102eeca4b573abcafefd6427a66af17ee5ce
|