Metadata-Version: 2.4
Name: rubrical
Version: 2.0.0
Summary: A CLI to encourage (😅) people to update their dependencies!
Author-email: Ivan Lee <ivanklee86@gmail.com>
Project-URL: Homepage, https://github.com/ivanklee86/rubrical
Project-URL: Repository, https://github.com/ivanklee86/rubrical
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Build Tools
Requires-Python: >=3.14
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: typer[standard]>=0.21.1
Requires-Dist: pydantic>=2.0.0
Requires-Dist: semver>=3.0.2
Requires-Dist: pygithub>=2.0.0
Requires-Dist: python-benedict[all]>=0.35.0
Requires-Dist: pyyaml>=6.0
Requires-Dist: requirements-parser>=0.13.0
Requires-Dist: pyproject-parser>=0.14.0
Requires-Dist: setuptools>=80.0.0
Requires-Dist: dom-toml>=2.0.0
Requires-Dist: requirements-detector>=1.3.2
Requires-Dist: toml>=0.10.2
Dynamic: license-file

# rubrical

[![CI](https://github.com/ivanklee86/rubrical/actions/workflows/ci.yaml/badge.svg)](https://github.com/ivanklee86/rubrical/actions/workflows/ci.yaml) [![codecov](https://codecov.io/gh/ivanklee86/rubrical/branch/main/graph/badge.svg?token=9WJM4LBDEX)](https://codecov.io/gh/ivanklee86/rubrical) [![PyPI version](https://badge.fury.io/py/rubrical.svg)](https://badge.fury.io/py/rubrical)

A CLI to encourage (😅) people to update their dependencies!

## raison d'etre

```gherkin
Scenario: A team publishes an update to a new library that needs to be adopted.
            (New feature, breaking changes, security fixes, etc)
  Given your company has a microservice architecture
          (or >3 repositories to update across >2 teams )
  Then you go to each team and beg/bargin/plead for them to update their packages
```

You can (should!) use tools like [renovate](https://github.com/renovatebot/renovate) to automate dependency updates.  But it's easy to lose track of updates especially with particularly technologies (hi JS/TS!) or busy teams.

`rubrical` breaks the cycle by putting a check inside your CI/CD pipelines. (Golden pipelines or shared workflows are highly recommended!)  Now teams have a tool to automatically (automagically!) communicated when a dependency needs to be upgraded!

For more information, checkout the [documentation](https://ivanklee86.github.io/rubrical/)!

## Features
- Set warning (notify users their dependency will be out of date soon) and block (exit with error code) levels.
- Supports different languages (Python, Go, Node.js, and Jsonnet) and package manager formats (e.g. pip, poetry).
- Post results to Github/GHE PRs.

![rubrical](https://github.com/ivanklee86/rubrical/blob/main/docs/images/rubrical.png?raw=true)
