Upgrade only direct dependencies in requirements.txt or pyproject.toml
Project description
upgrade-py-direct-reqs
Upgrade only direct dependencies listed in requirements.txt safely.
A Python CLI tool that lets you review and upgrade only direct dependencies in a project’s requirements.txt (or pyproject.toml in future versions), while keeping your pinned versions up to date.
Developed by Miteshkumar N Raval with guidance and scripting assistance from OpenAI ChatGPT.
Features
- Lists outdated direct dependencies.
- Prompts for confirmation before upgrading.
- Updates
requirements.txtwith new pinned versions. - Cross-platform: works on Linux, macOS, and Windows.
- CLI installable via pipx.
Installation
# Recommended: install globally using pipx
pipx install upgrade-py-direct-reqs
Or via pip in a venv:
pip install upgrade-py-direct-reqs
Usage
# Explicitly specify your requirements file
upgrade-py-direct-reqs path/to/requirements.txt
- The CLI will list outdated direct dependencies.
- You can review versions and confirm before upgrading.
- After upgrade, the
requirements.txtfile is updated with pinned versions.
Example
Before
requirements.txt:
requests==2.30.0
flask==2.2.5
Command
upgrade-py-direct-reqs requirements.txt
Output (sample)
📦 Outdated direct dependencies:
requests: 2.30.0 → 2.32.3
flask: 2.2.5 → 3.0.3
⚠️ Please review package revisions listed above before upgrading.
Check release notes on pypi.org for BREAKING changes or necessary code updates.
Proceed with upgrade? (y/n): y
⬆️ Upgrading 2 packages...
✅ Requirements updated: requirements.txt
After
requirements.txt:
requests==2.32.3
flask==3.0.3
License
This project is licensed under the MIT License — see the LICENSE file for details.
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 upgrade_py_direct_reqs-0.1.1.tar.gz.
File metadata
- Download URL: upgrade_py_direct_reqs-0.1.1.tar.gz
- Upload date:
- Size: 4.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f2a67ff1c821ba6f949554122fbb39bd25576a6869435e279caa30bad25617d8
|
|
| MD5 |
1f8d431b07671f4bb6f315afa60faae4
|
|
| BLAKE2b-256 |
13bcacb838732f4e1c38061b560eb6551a3df35aa19da70f68a8cd52dd4f31b8
|
File details
Details for the file upgrade_py_direct_reqs-0.1.1-py3-none-any.whl.
File metadata
- Download URL: upgrade_py_direct_reqs-0.1.1-py3-none-any.whl
- Upload date:
- Size: 5.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9c078298aecb43c628158406bd3a014b6d2737c263edb497dc9913be09586cb6
|
|
| MD5 |
13d82c28d00e049797685df14b254c49
|
|
| BLAKE2b-256 |
c03d5d7bc449207343a336e9d0d7b4e710a8db1e974f32c5b7e2beaa23bc71e6
|