Automate the boilerplate while initializing your Python project

Related tags

Miscellaneousrubric
Overview

Rubric

>> Automate the boilerplate while initializing your Python project <<

 

img

Preface

Rubric is an opinionated project initializer for Python. It assumes that you'll use:

  • Black as the primary code formatter.
  • Isort to sort the imports.
  • Flake8 to ensure style guide conformance.
  • Mypy to check the type hints.
  • Pip-tools to manage the dependencies.

Following is a list of config files that Rubric is going to add to your directory:

root
├── .flake8                  # Config file for .flake8
├── .gitignore               # Python specific .gitignore file
├── makefile                 # Makefile containing the commands to lint your code
├── mypy.ini                 # Config file for mypy type checker
├── pyproject.toml           # Toml file to hold a few common config vars
├── README.md                # A readme boilerplate
├── requirements-dev.in      # File to specify the top level dev requirements
├── requirements-dev.txt     # File to specify the dev requirements
├── requirements.in          # File to specify the top level app requirements
└── requirements.txt         # File to specify the pinned app requirements

The files will contain minimal but sensible default configurations for the respective tools. You're free to change them as you like.

Installation

  • Rubric requires Python 3.7 and up.

  • Make a virtual environment in your project's root directory.

  • Activate the environment and run:

    pip install rubric
    

Usage

  • To inspect all the CLI options, run:

    rubric --help
    

    You should see the following output:

    $ rubric
    
           ___       __       _
          / _ \__ __/ /  ____(_)___
         / , _/ // / _ \/ __/ / __/
        /_/|_|\_,_/_.__/_/ /_/\__/
    
    usage: rubric [-h] [-l] [-d DIRNAME] [-o OVERWRITE [OVERWRITE ...]] [-v] [run]
    
    Rubric -- Initialize your Python project ⚙️
    
    positional arguments:
    run                   run rubric & initialize the project scaffold
    
    optional arguments:
    -h, --help            show this help message and exit
    -l, --list            list the config files that are about to be generated
    -d DIRNAME, --dirname DIRNAME
                            target directory name
    -o OVERWRITE [OVERWRITE ...], --overwrite OVERWRITE [OVERWRITE ...]
                            overwrite existing config files, allowed values are: all, .flake8,
                            .gitignore, README.md, makefile, mypy.ini, pyproject.toml,
                            requirements-dev.in, requirements-dev.txt, requirements.in,
                            requirements.txt
    -v, --version         display the version number
    
    
  • Initialize a project with the following command:

    rubric run
    

    This will run the tool in a non-destructive way—that means it won't overwrite any of the configuration files that you might have in the directory.

    If you want to overwrite any of the existing config files that you might have in the directory, then run:

    rubric run --overwrite filename1 filename2
    

    You can also point Rubric to a directory.

    rubric run --directory "some/custom/directory"
    
🍰
Comments
  • Bump dependabot/fetch-metadata from 1.3.1 to 1.3.3

    Bump dependabot/fetch-metadata from 1.3.1 to 1.3.3

    Bumps dependabot/fetch-metadata from 1.3.1 to 1.3.3.

    Release notes

    Sourced from dependabot/fetch-metadata's releases.

    v1.3.3

    What's Changed

    New Contributors

    Full Changelog: https://github.com/dependabot/fetch-metadata/compare/v1.3.2...v1.3.3

    v1.3.2

    What's Changed

    New Contributors

    Full Changelog: https://github.com/dependabot/fetch-metadata/compare/v1.3.1...v1.3.2

    Commits
    • 605e039 Merge pull request #233 from dependabot/v1.3.3-release-notes
    • e0f3842 v1.3.3
    • ac6adf8 Merge pull request #232 from jsok/patch-1
    • 15259f7 action.yaml: fix skip-commit-verification quoting
    • 90ed90d Merge pull request #226 from dependabot/v1.3.2-release-notes
    • 28b141f v1.3.2
    • cfb7274 Merge pull request #225 from dependabot/brrygrdn/skip-commit-verification
    • 6c87543 Bump dist/
    • d882a80 Update documentation
    • b1673a7 Add skip-commit-verification input
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies github_actions 
    opened by dependabot[bot] 0
  • Bump dependabot/fetch-metadata from 1.1.1 to 1.3.1

    Bump dependabot/fetch-metadata from 1.1.1 to 1.3.1

    Bumps dependabot/fetch-metadata from 1.1.1 to 1.3.1.

    Release notes

    Sourced from dependabot/fetch-metadata's releases.

    v1.3.1

    Highlights

    This release is primarily catching up on our dependencies, but it also includes a few bug fixes:

    What's Changed

    New Contributors

    Full Changelog: https://github.com/dependabot/fetch-metadata/compare/v1.3.0...v1.3.1

    v1.3.0 - Fetch additional metadata via the GitHub API

    Highlights

    🆕 Fetch additional metadata about Dependabot commits

    You can now optionally enable API lookups within the Action to retrieve extra information about Dependabot PRs.

    Example:

    -- .github/workflows/dependabot-prs.yml
    name: Dependabot Pull Request
    on: pull_request_target
    jobs:
    </tr></table> 
    

    ... (truncated)

    Commits
    • bfac3fa Merge pull request #210 from dependabot/v1.3.1-release-notes
    • 80173ff Small correction to bump-version script
    • 525fbe9 v1.3.1
    • 58f09fc Merge pull request #206 from dependabot/dependabot/npm_and_yarn/yaml-2.0.1
    • b1d2cf8 Bump dist/
    • 70c6c9e Bump yaml from 1.10.2 to 2.0.1
    • 7b49493 Merge pull request #209 from dependabot/dependabot/npm_and_yarn/vercel/ncc-0....
    • 13f5830 Bump @​vercel/ncc from 0.33.3 to 0.33.4
    • 59ab888 Merge pull request #208 from dependabot/dependabot/npm_and_yarn/types/node-17...
    • aad4446 Bump @​types/node from 17.0.23 to 17.0.25
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies github_actions 
    opened by dependabot[bot] 0
  • Bump actions/cache from 2 to 3

    Bump actions/cache from 2 to 3

    Bumps actions/cache from 2 to 3.

    Release notes

    Sourced from actions/cache's releases.

    v3.0.0

    • This change adds a minimum runner version(node12 -> node16), which can break users using an out-of-date/fork of the runner. This would be most commonly affecting users on GHES 3.3 or before, as those runners do not support node16 actions and they can use actions from github.com via github connect or manually copying the repo to their GHES instance.

    • Few dependencies and cache action usage examples have also been updated.

    v2.1.7

    Support 10GB cache upload using the latest version 1.0.8 of @actions/cache

    v2.1.6

    • Catch unhandled "bad file descriptor" errors that sometimes occurs when the cache server returns non-successful response (actions/cache#596)

    v2.1.5

    • Fix permissions error seen when extracting caches with GNU tar that were previously created using BSD tar (actions/cache#527)

    v2.1.4

    • Make caching more verbose #650
    • Use GNU tar on macOS if available #701

    v2.1.3

    • Upgrades @actions/core to v1.2.6 for CVE-2020-15228. This action was not using the affected methods.
    • Fix error handling in uploadChunk where 400-level errors were not being detected and handled correctly

    v2.1.2

    • Adds input to limit the chunk upload size, useful for self-hosted runners with slower upload speeds
    • No-op when executing on GHES

    v2.1.1

    • Update @actions/cache package to v1.0.2 which allows cache action to use posix format when taring files.

    v2.1.0

    • Replaces the http-client with the Azure Storage SDK for NodeJS when downloading cache content from Azure. This should help improve download performance and reliability as the SDK downloads files in 4 MB chunks, which can be parallelized and retried independently
    • Display download progress and speed
    Changelog

    Sourced from actions/cache's changelog.

    Releases

    3.0.0

    • Updated minimum runner version support from node 12 -> node 16

    3.0.1

    • Added support for caching from GHES 3.5.
    • Fixed download issue for files > 2GB during restore.

    3.0.2

    • Added support for dynamic cache size cap on GHES.

    3.0.3

    • Fixed avoiding empty cache save when no files are available for caching. (issue)

    3.0.4

    • Fixed tar creation error while trying to create tar with path as ~/ home folder on ubuntu-latest. (issue)
    Commits
    • c3f1317 Merge pull request #813 from actions/users/kotewar/upgrading-cache-to-v2.0.6
    • d0a54b9 Fixed typo
    • 8c5bd0c Updated README file with release info
    • c9c0f73 Merge pull request #812 from actions/users/kotewar/upgrading-cache-to-v2.0.6
    • 2b6caae Merge pull request #495 from ostera/patch-1
    • dd58d13 Added release info and upgraded version
    • acace7f Merge branch 'main' into patch-1
    • 438628a Merge pull request #554 from albertstill/improve-restore-key-docs
    • c296e6a Updated @​actions/cache version in license file
    • 7ed7f22 Updated actions/cache to v2.0.6
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies github_actions 
    opened by dependabot[bot] 0
  • Bump actions/setup-python from 3 to 4

    Bump actions/setup-python from 3 to 4

    Bumps actions/setup-python from 3 to 4.

    Release notes

    Sourced from actions/setup-python's releases.

    v4.0.0

    What's Changed

    • Support for python-version-file input: #336

    Example of usage:

    - uses: actions/[email protected]
      with:
        python-version-file: '.python-version' # Read python version from a file
    - run: python my_script.py
    

    There is no default python version for this setup-python major version, the action requires to specify either python-version input or python-version-file input. If the python-version input is not specified the action will try to read required version from file from python-version-file input.

    • Use pypyX.Y for PyPy python-version input: #349

    Example of usage:

    - uses: actions/[email protected]
      with:
        python-version: 'pypy3.9' # pypy-X.Y kept for backward compatibility
    - run: python my_script.py
    
    • RUNNER_TOOL_CACHE environment variable is equal AGENT_TOOLSDIRECTORY: #338

    • Bugfix: create missing pypyX.Y symlinks: #347

    • PKG_CONFIG_PATH environment variable: #400

    • Added python-path output: #405 python-path output contains Python executable path.

    • Updated zeit/ncc to vercel/ncc package: #393

    • Bugfix: fixed output for prerelease version of poetry: #409

    • Made pythonLocation environment variable consistent for Python and PyPy: #418

    • Bugfix for 3.x-dev syntax: #417

    • Other improvements: #318 #396 #384 #387 #388

    Update actions/cache version to 2.0.2

    In scope of this release we updated actions/cache package as the new version contains fixes related to GHES 3.5 (actions/setup-python#382)

    Add "cache-hit" output and fix "python-version" output for PyPy

    This release introduces new output cache-hit (actions/setup-python#373) and fix python-version output for PyPy (actions/setup-python#365)

    The cache-hit output contains boolean value indicating that an exact match was found for the key. It shows that the action uses already existing cache or not. The output is available only if cache is enabled.

    ... (truncated)

    Commits
    • d09bd5e fix: 3.x-dev can install a 3.y version (#417)
    • f72db17 Made env.var pythonLocation consistent for Python and PyPy (#418)
    • 53e1529 add support for python-version-file (#336)
    • 3f82819 Fix output for prerelease version of poetry (#409)
    • 397252c Update zeit/ncc to vercel/ncc (#393)
    • de977ad Merge pull request #412 from vsafonkin/v-vsafonkin/fix-poetry-cache-test
    • 22c6af9 Change PyPy version to rebuild cache
    • 081a3cf Merge pull request #405 from mayeut/interpreter-path
    • ff70656 feature: add a python-path output
    • fff15a2 Use pypyX.Y for PyPy python-version input (#349)
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies github_actions 
    opened by dependabot[bot] 0
  • Add caching to the CI

    Add caching to the CI

    Change the CI to make it more performant.

    • Add pip caching.
    • Add scheduled execution of the CI pipeline.
    • Add action update rules to the dependabot.yml file.
    opened by rednafi 0
  • Remove redundant requirements file

    Remove redundant requirements file

    Currently, Rubric uses setup.py and setup.cfg for packaging and dependency management. This makes the requirements* files redundant. Remove them and change the Makefile as needed.

    opened by rednafi 0
Releases(v0.6.7)
  • v0.6.7(Nov 8, 2022)

  • v0.6.5(Aug 1, 2022)

  • v0.6.4(Jul 24, 2022)

  • v0.6.1(May 31, 2022)

    This release contains breaking changes. The interface of the CLI has been reworked. You can read about the changes in the README.md file or via running:

    rubric --help
    
         >> Config Initializer for Python Projects <<        
    
        Usage: rubric [OPTIONS]
        
        Options:
          -h, --help                      Display help message.
          -v, --version                   Display the version number.
          -s, --show                      Show the contents of the config files.
          -a, --append                    Append to existing config files.
          -o, --overwrite                 Overwrite existing config files.
          -c, --create                    Create the config files in the current
                                          directory.
          -f, --filename [.editorconfig|.flake8|.gitignore|.pre-commit-config.yaml|README.md|Makefile|pyproject.toml|requirements-
            dev.in|requirements-dev.txt|requirements.in|requirements.txt]
                                          Target file names.
          -d, --dirname PATH              Target directory name.
          -l, --list                      List the config files that are about to
                                          be generated.  
    
    Source code(tar.gz)
    Source code(zip)
  • v0.5.8(Jan 16, 2022)

    • Added markdown config to .editorconfig.
    • Turned makefile into Makefile to conform to the conventions.
    • Updated tests to be compatible with the newest version of pytest-asyncio. Async tests no longer need to be wrapped in @pytest.mark.asyncio decorator.
    Source code(tar.gz)
    Source code(zip)
  • v0.5.4(Dec 23, 2021)

  • v0.5.1(Dec 12, 2021)

    ChangeLog

    • Add EditorConfig to enforce consistent coding styles for multiple developers.
    • Add Pre-commit for managing and maintaining the pre-commit hooks.
    • Remove Poetry and make the native packing workflow conform to PEP-517.
    • Development requirements are no longer pinned.
    • Drop support for Python 3.7.
    Source code(tar.gz)
    Source code(zip)
  • v0.4.3(Nov 4, 2021)

  • v0.4.2(Oct 7, 2021)

  • v0.4.0(Sep 19, 2021)

    Added pip-compile and pip-sync commands to the makefile. These commands are used to lock and sync dependencies in pip-tools. Having these in the makefile means, two fewer commands to remember. Also, now you can run:

    make help
    

    to see all the available commands with their descriptions. This will print:

    black                Apply black.
    dep-lock             Freeze deps in 'requirements.txt' file.
    dep-sync             Sync venv installation with 'requirements.txt' file.
    dep-update           Update all the dependencies to the latest version
    flake                Apply flake8.
    help                 Show this help message.
    isort                Apply isort.
    lint                 Apply all the linters.
    lint-check           Check whether the codebase satisfies the linter rules.
    mypy                 Apply mypy.
    test                 Run the tests against the current version of Python.
    
    Source code(tar.gz)
    Source code(zip)
  • v0.3.9(Aug 28, 2021)

    • Changed the ethos
    • Updated the description to make the purpose of the tool clearer.
    • The CLI looks less noisy.
    $ rubric
    
               Rubric - Isomorphic Dependency & Config Management for Python ⚙️          
    
    usage: rubric [-h] [-l] [-d] [-f  [...]] [-o  [...]] [-a  [...]] [-s  [...]] [-v] [run]
    
    positional arguments:
      run                   Run rubric & initialize the project scaffold.
    
    optional arguments:
      -h, --help            Show this help message and exit.
      -l, --list            List the config files that are about to be generated.
      -d , --dirname        Target directory name.
      -f  [ ...], --filename  [ ...]
                            Target file names. Allowed values are: all, .flake8, .gitignore,
                            README.md, makefile, pyproject.toml, requirements-dev.in,
                            requirements-dev.txt, requirements.in, requirements.txt.
      -o  [ ...], --overwrite  [ ...]
                            Overwrite existing config files. Allowed values are the same as the
                            values accepted by the '-f/--file' flag.
      -a  [ ...], --append  [ ...]
                            Append to existing config files. Allowed values are the same as the
                            values accepted by the '-f/--file' flag.
      -s  [ ...], --show  [ ...]
                            Display the config file contents. Allowed values are the same as
                            the values accepted by the '-f/--file' flag.
      -v, --version         Display the version number.
    
    Source code(tar.gz)
    Source code(zip)
  • v0.3.8(Aug 19, 2021)

  • 0.3.7(Jul 25, 2021)

  • 0.3.6(Jul 20, 2021)

  • v0.3.4(Jul 5, 2021)

  • v0.3.3(Jun 29, 2021)

  • v0.3.2(Jun 27, 2021)

  • v0.3.1(Jun 25, 2021)

  • v0.3.0(Jun 21, 2021)

Owner
Redowan Delowar
Hacking healthcare @DendiSoftware. Writing & talking about—Statistics, Machine Learning, System Arch, APIs, Redis, Docker, Python, Go, etc.
Redowan Delowar
AKSWINPOSTINIT -- AKS Windows node post provisioning initialization

AKSWINPOSTINIT -- AKS Windows node post provisioning initialization Features This is a tool that provides one-time powershell script initilization for

Ping He 3 Nov 25, 2021
Youtube Channel Website

Videos-By-Sanjeevi Youtube Channel Website YouTube Channel Website Features: Free Hosting using GitHub Pages and open-source code base in GitHub. It c

Sanjeevi Subramani 5 Mar 26, 2022
carrier.py is a Python package/module that's used to save time when programming

carrier.py is a Python package/module that's used to save time when programming, it helps with functions such as 24 and 12 hour time, Discord webhooks, etc

Zacky2613 2 Mar 20, 2022
A python script to decrypt media files encrypted using the Android application 'Secret Calculator Photo Vault'. Supports brute force of PIN also.

A python script to decrypt media files encrypted using the Android application 'Secret Calculator Photo Vault'. Supports brute force of PIN also.

3 May 01, 2022
ChainJacking is a tool to find which of your Go lang direct GitHub dependencies is susceptible to ChainJacking attack.

ChainJacking is a tool to find which of your Go lang direct GitHub dependencies is susceptible to ChainJacking attack.

Checkmarx 36 Nov 02, 2022
CBLang is a programming language aiming to fix most of my problems with Python

CBLang A bad programming language made in Python. CBLang is a programming language aiming to fix most of my problems with Python (this means that you

Chadderbox 43 Dec 22, 2022
This repository is an archive of emails that are sent by the awesome Quincy Larson every week.

Awesome Quincy Larson Email Archive This repository is an archive of emails that are sent by the awesome Quincy Larson every week. If you fi

Sourabh Joshi 912 Jan 05, 2023
Hello, Welcome to this repo. don't forget to read guidelines in readme.md

Hacktoberfest_2021 If you looking for your first contribution, we are here to help. Just create a simple program using any language you like in our fo

Wafa Rifqi Anafin 117 Dec 14, 2022
Basic-Killfeed - A simple DayZ Console Killfeed

Basic-Killfeed A simple DayZ Console Killfeed. Setup Install Python Version 3.10

Nick 1 Apr 25, 2022
Tools for analyzing Java JVM gc log files

gc_log This package consists of two separate utilities useful for : gc_log_visualizer.py regionsize.py GC Log Visualizer This was updated to run under

Brad Schoening 0 Jan 04, 2022
→ Plantilla de registro para Python

🔧 Pasos Necesarios CMD 🖥️ SOCKETS pip install sockets 🎨 COLORAMA pip install colorama 💻 Código register-by-inputs from turtle import color # Impor

Panda.xyz 4 Mar 12, 2022
Probably the best way to simulate block scopes in Python

This is a package, as it says on the tin, to emulate block scoping in Python, the lack of which being a clever design choice yet sometimes a trouble.

88 Oct 26, 2022
HairCLIP: Design Your Hair by Text and Reference Image

Overview This repository hosts the official PyTorch implementation of the paper: "HairCLIP: Design Your Hair by Text and Reference Image". Our single

322 Dec 30, 2022
Project repository of Apache Airflow, deployed on Docker in Amazon EC2 via GitLab.

Airflow on Docker in EC2 + GitLab's CI/CD Personal project for simple data pipeline using Airflow. Airflow will be installed inside Docker container,

Ammar Chalifah 13 Nov 29, 2022
Spartan implementation of H.O.T.T.

Down The Path I was walking down the line, Trying to find some peace of mind. Then I saw you, You were takin' it slow, And walkin' it one step at a ti

Trebor Huang 25 Aug 05, 2022
Some ideas and tools to develop Python 3.8 plugins for GIMP 2.99.4

gimp-python-development Some ideas and tools to develop Python 3.8 plugins for GIMP 2.99.4. GIMP 2.99.4 is the latest unstable pre-release of GIMP 3.

Ismael Benito 53 Sep 25, 2022
SEH-Helper - Binary Ninja plugin for exploring Structured Exception Handlers

SEH Helper Author: EliseZeroTwo A Binary Ninja helper for exploring structured e

Elise 74 Dec 26, 2022
Source-o-grapher is a tool built with the aim to investigate software resilience aspects of Open Source Software (OSS) projects.

Source-o-grapher is a tool built with the aim to investigate software resilience aspects of Open Source Software (OSS) projects.

Aristotle University 5 Jun 28, 2022
Pardus-flatpak-gui - A Flatpak GUI for Pardus

Pardus Flatpak GUI A GUI for Flatpak. You can run, install (from FlatHub and fro

Erdem Ersoy 2 Feb 17, 2022
API Rate Limit Decorator

ratelimit APIs are a very common way to interact with web services. As the need to consume data grows, so does the number of API calls necessary to re

Tomas Basham 574 Dec 26, 2022