Skip to main content

No project description provided

Project description

Scribes

Scribes is a distributed refactoring tool that enables you to clone repositories and apply sweeping changes.

Getting started

Pre-requisites

Scribes relies on git and the GitHub cli (gh). You can follow install instructions for gh here. You can then authenticate using gh auth login.

Usage

Let's say you want to clone all repos in an organization and apply pre-commit autoupdate to all repos.

  1. pip install scribes

  2. Run the following commands

    scribes search
    scribes filter --contains-file .pre-commit-config.yaml
    scribes clone --limit 10
    scribes run "git branch"
    scribes run "git checkout -b pre-commit-autoupdate"
    scribes run "pre-commit autoupdate"
    scribes run "git add .pre-commit-config.yaml"
    scribes run "git commit -m 'chore: autoupdate pre-commit'"
    scribes run "git push origin pre-commit-autoupdate"
    scribes run "gh pr create --title 'chore: autoupdate pre-commit' --body 'Autoupdate pre-commit' --base main --head pre-commit-autoupdate"
    

🎉 There it is, you have created PRs to autoupdate pre-commit in all repos that contain a .pre-commit-config.yaml file.

To be implemented

  • [] Filter functionalities outside of --contains-file
  • [] Add visualization
  • [] Create documentation to apply commands to only modified repositories (like gh pr create commands)
  • [] Encapsulate typical workflow commands (like the one above) in a single command

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

scribes-0.1.2.tar.gz (4.1 kB view details)

Uploaded Source

Built Distribution

scribes-0.1.2-py3-none-any.whl (4.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: scribes-0.1.2.tar.gz
  • Upload date:
  • Size: 4.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.10.12 Linux/6.5.0-1025-azure

File hashes

Hashes for scribes-0.1.2.tar.gz
Algorithm Hash digest
SHA256 b64bac669395ea775b44a12965976f3c7725d79e67169662d074e6756f0830df
MD5 14573e5cf49c6904073971a45eb0eca9
BLAKE2b-256 8c1b229bd1a2fcf12270fbce0adec35a1097578ceeb699391364234fcd908770

See more details on using hashes here.

File details

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

File metadata

  • Download URL: scribes-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 4.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.10.12 Linux/6.5.0-1025-azure

File hashes

Hashes for scribes-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 85826a76d21f4f00564d80baed5692cb02034268857ec9d2e3c0e54e2aa05514
MD5 69776ebfac692a0fcaf5467bc682b790
BLAKE2b-256 4c7dd8d4648dd6f2877fffea92da511246358085541b9fdea0e858bce603f012

See more details on using hashes here.

Supported by

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