Skip to main content

AURA: an automated dependency update agent that searches for safe modernized requirements using your existing validation.

Project description

AURA: Automated Updater and Restoration Agent aura-dep-agent is a Python tool that helps you safely modernize your project’s dependencies. It can also be used to maintain your dependencies in the long run and does not probe or open a PR like Dependabot; it only commits changes when the update passes your validation tests.

You give it a repository and a validation entry point (a Python script or a pytest suite). AURA then searches for newer dependency versions that still pass your validation. If an update breaks your validation, AURA does not submit that change.

Installation: pip install aura-dep-agent This installs the aura command-line tool.

Quick start: Go to your project repo cd /path/to/your-project

Make sure you have:

a requirements.txt file

either:

a Python script you can run with python your_script.py, or

a pytest test suite (for example, a tests/ folder)

Run the AURA initializer:

aura init
The wizard will:

    detect whether your project is an installable package or not

    ask how to run your validation (script path or pytest target)

    ask which Python version to use in CI

    generate:

        dependency_agent.py in your repo

        .github/workflows/aura.yml GitHub Actions workflow

Commit and push:

git add dependency_agent.py .github/workflows/aura.yml
git commit -m "Add AURA dependency agent"
git push
Run AURA in GitHub Actions

In your GitHub repo, go to the Actions tab.

Find the “AURA Speed Run” workflow.

Click “Run workflow” to start your first run.

AURA will run your validation as it explores dependency updates and only keep an update when your validation still passes.

How it works (high level): dependency_agent.py contains a configuration dictionary (AGENT_CONFIG) for your repository and a small runner that calls the AURA dependency agent.

The GitHub Actions workflow:

sets up Python

installs aura-dep-agent

runs dependency_agent.py    

The AURA agent:

proposes candidate dependency upgrades

runs your validation for each candidate

writes a summary log (for example, aura_ua_execution.log)

can commit and push a modernized requirements.txt when validation passes.

Requirements and limitations:

Requires Python 3.10+ (3.10 or 3.11 recommended).

Requires a working requirements.txt.

Requires an existing validation entry point (script or pytest); AURA does not
automatically generate full test suites.

License: This project is licensed under the MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aura_dep_agent-0.1.2.tar.gz (21.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aura_dep_agent-0.1.2-py3-none-any.whl (22.6 kB view details)

Uploaded Python 3

File details

Details for the file aura_dep_agent-0.1.2.tar.gz.

File metadata

  • Download URL: aura_dep_agent-0.1.2.tar.gz
  • Upload date:
  • Size: 21.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.11

File hashes

Hashes for aura_dep_agent-0.1.2.tar.gz
Algorithm Hash digest
SHA256 89c9050512f04d94f4fa31cc008d5530664b9d5add1df8833d15aae3b4099a0d
MD5 ead57bf42ab04f9375b2dcd30f5b85b4
BLAKE2b-256 f196f4119072cdc08fbf52d3b8739a4138a6d61e9507a0a5e5d860f0298aa1a8

See more details on using hashes here.

File details

Details for the file aura_dep_agent-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: aura_dep_agent-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 22.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.11

File hashes

Hashes for aura_dep_agent-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 7aeebe7c90589e240d85d9e0a5997d49ac24c706b33f5b788511d8b6a034e223
MD5 5d9aa777c825898f093f8afbc0e404cf
BLAKE2b-256 2f53ee0df274e898e400ddf1abf06d0cbf61366ad2f9a3ebf90df8cc4d934f63

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page