kcliutils
Project description
kcliutils
Description
Python cli utils for faster development
Install
pip install kcliutils
# or
pip3 install kcliutils
How to use
1. Package related
npp/new_python_package
- Run in an empty folder with git checked out
- Creates a new empty package, with default files, such as .gitignore, README.md, setup.py, demo.py, LICENSE, etc.
# cd to desired folder with .git in it
npp package_name
# or
new_python_package package_name
npp test_package_name
will generate
upp/upgrade_python_package
- Run in an already existing project folder
- Updates setup.py with dependencies, bumps version number
- Updates install_dependencies.sh and requirements.txt
- Updates readme with dependencies, copies the contents of 'demo.py' to the usage section of the reeadme
- NOTE: to make this work properly, the packege had to be created with npp.
# cd to desired folder with .git in it
upp
# or
upgrade_python_package
ppp/publish_python_package
- Calls upp, publishes to pypi and installs the new version
# cd to desired folder with .git in it
ppp "Optional commit message"
# or
publish_python_package "Optional commit message"
prpipush/upgrade_push_install
- Same as ppp, but without publishing on pypi (for private, github-hosted packages)
# cd to desired folder with .git in it
prpipush "Optional commit message"
# or
upgrade_push_install "Optional commit message"
2. Formatting
cl/clean_lines
- Cleans the ending useless spaces from every line
# cd to desired folder
cl
# or
clean_lines
migrate_comment_line_len
- Updates the lengh of each separator comment line generated with the file generators from this package.
# cd to desired folder
migrate_comment_line_len Optional_length_which_defaults_to_your_settings
3. Git
psh/push
- stages/commits everything and pushes to github
# cd to desired folder
psh "Optional commit message"
# or
push "Optional commit message"
ftch/fetch
- git fetch
# cd to desired folder
ftch
# or
fetch
pll/pull
- git pull
# cd to desired folder
pll
# or
pull
4. Pip
pipu/pip_uninstall
- pip uninstall
pipu PACKAGE_NAME
# or
pip_uninstall PACKAGE_NAME
pipi/pipiu/pip_install
- pip install -U
pipi PACKAGE_NAME
# or
pipiu PACKAGE_NAME
# or
pip_install PACKAGE_NAME
pipir/pip_reinstall
- pip uninstall && pip install
pipir PACKAGE_NAME
# or
pip_reinstall PACKAGE_NAME
5. New files
pyreqs/python_requirements
- creates a requirements.txt file with all the used dependencies
pyreqs
# creates 'requirements.txt'
# or
python_requirements
pif/create_python_install_file
- creates an install_dependencies.sh file with all the used dependencies
pif
# creates 'install_dependencies.sh'
# or
create_python_install_file
npc/new_python_class
- creates a python file with a class-like formatting
npc file_name
# creates 'file_name.py' class 'FileName' in it
# also accepts relative path 'relative/path/to/file_name'
# or
new_python_class file_name
generated file contents
# ------------------------------------------- Imports ------------------------------------------ #
# System
# Pip
# Local
# ---------------------------------------------------------------------------------------------- #
# -------------------------------------- class: TestClass -------------------------------------- #
class TestClass:
# ---------------------------------------- Init ---------------------------------------- #
def __init__(
self
):
return
# ---------------------------------- Public properties --------------------------------- #
# ----------------------------------- Public methods ----------------------------------- #
# --------------------------------- Private properties --------------------------------- #
# ----------------------------------- Private methods ---------------------------------- #
# ---------------------------------------------------------------------------------------------- #
npa/new_python_api
- creates a python file with a api-like formatting (conforming ksimpleapi)
npa file_name
# creates 'file_name.py' class 'FileName' in it
# also accepts relative path 'relative/path/to/file_name'
# or
new_python_api file_name
generated file contents
# ------------------------------------------- Imports ------------------------------------------ #
# System
from typing import Optional, Dict
# Pip
from ksimpleapi import Api
# Local
# ---------------------------------------------------------------------------------------------- #
# --------------------------------------- class: FileName -------------------------------------- #
class FileName(Api):
# -------------------------------------- Overrides ------------------------------------- #
@classmethod
def extra_headers(cls) -> Optional[Dict[str, any]]:
return {
}
# ---------------------------------- Public properties --------------------------------- #
# ----------------------------------- Public methods ----------------------------------- #
# --------------------------------- Private properties --------------------------------- #
# ----------------------------------- Private methods ---------------------------------- #
# ---------------------------------------------------------------------------------------------- #
npe/new_python_enum
- creates a python file with a enum-like formatting
npe file_name
# creates 'file_name.py' enum 'FileName' in it
# also accepts relative path 'relative/path/to/file_name'
# or
new_python_enum file_name
generated file contents
# ------------------------------------------- Imports ------------------------------------------ #
# System
from enum import Enum
# ---------------------------------------------------------------------------------------------- #
# --------------------------------------- enum: FileName --------------------------------------- #
class FileName(Enum):
Template = 0
# ---------------------------------------------------------------------------------------------- #
npf/new_python_file
- creates a python file with a default file formatting
npf file_name
# creates 'file_name.py'
# also accepts relative path 'relative/path/to/file_name'
# or
new_python_file file_name
generated file contents
# ------------------------------------------- Imports ------------------------------------------ #
# System
# Pip
# Local
# ---------------------------------------------------------------------------------------------- #
# ----------------------------------------- Public vars ---------------------------------------- #
# ---------------------------------------- Private vars ---------------------------------------- #
# ---------------------------------------- Private vars ---------------------------------------- #
# ---------------------------------------- Private vars ---------------------------------------- #
# ---------------------------------------------------------------------------------------------- #
npfl/new_python_flow
- creates a python file with a flow-like formatting (check example)
npfl file_name
# creates 'file_name.py'
# also accepts relative path 'relative/path/to/file_name'
# or
new_python_flow file_name
generated file contents
# ------------------------------------------- Imports ------------------------------------------ #
# System
# Pip
# Local
# ---------------------------------------------------------------------------------------------- #
# ------------------------------------------- Methods ------------------------------------------ #
# -------------------------------------------- Paths ------------------------------------------- #
# -------------------------------------------- Vars -------------------------------------------- #
# -------------------------------------------- Flow -------------------------------------------- #
# ---------------------------------------------------------------------------------------------- #
nps/new_python_subpackage
- creates a new subpackage at the desired relative path
nps SUB_PACKAGE_NAME_OR_RELATIVE_PATH
# or
new_python_subpackage SUB_PACKAGE_NAME_OR_RELATIVE_PATH
nps test_subpackage
will generate
Dependencies
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
kcliutils-0.1.12.tar.gz
(21.5 kB
view details)
Built Distribution
File details
Details for the file kcliutils-0.1.12.tar.gz
.
File metadata
- Download URL: kcliutils-0.1.12.tar.gz
- Upload date:
- Size: 21.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/3.7.3 pkginfo/1.5.0.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.7.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 647cf4b9c3f35745917a646e68469b47623c6c75845d2f9556d6e5f8759e5417 |
|
MD5 | 5a6e6c36abefe6d7a90bc12fabf00a61 |
|
BLAKE2b-256 | f5bf927ecfff0497974a37e1059894da76b33fd4f3f361baeea6b6b1c7775497 |
File details
Details for the file kcliutils-0.1.12-py3-none-any.whl
.
File metadata
- Download URL: kcliutils-0.1.12-py3-none-any.whl
- Upload date:
- Size: 32.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/3.7.3 pkginfo/1.5.0.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.7.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2694191d42f23084f3d846aa8faac93cdf8f35da3dff7cd5c51c1b1ddb86f4c9 |
|
MD5 | e871b884a13d82dec864c9d3b52be79e |
|
BLAKE2b-256 | 63c5c02ed8720442b011140ee3b9b109b971eb34a27226d7f3e6aaf9e3db5ab9 |