Easyp
easyp
is a cli tool for workflows with proto
files.
For now, it's just linter and package manager, but... who knows, who knows...
Just testing
Official site
https://easyp.tech/
Telegram chat
https://t.me/easyptech
Install
Build from source
- Clone repository
- Build
go build ./cmd/easyp
Install from github
go install github.com/easyp-tech/easyp/cmd/easyp@latest
Init
Creates empty easyp
project.
Creates easyp.yaml
(by default) and easyp.lock
files.
Usage
easyp init
Linter
easyp
support buf's
linter rules.
Usage
easyp lint -cfg example.easyp.yaml
Breaking check
Checking your current API on backward compatibility with API from another branch.
Usage
easyp breaking --against $BRANCH_TO_COMPARE_WITH
Package manager
Usage
easyp -cfg example.easyp.yaml mod download
Read your dependencies from easyp.lock
file and install them.
If easyp.lock
is empty or doesn't exist easyp
read dependencies from easyp.yaml
config file (deps
section).
easyp -cfg example.easyp.yaml mod update
Read dependencies from easyp.yaml
config file and ignore easyp.lock
file.
Could be used for update versions: set version in easyp.yaml
file and run update
command.
easyp -cfg example.easyp.yaml mod vendor
Copy all your proto files dependencies to local dir (like go mod vendor
command).
Configuration
Write list of your dependencies in easyp.yaml
config with in section deps
.
For example:
deps:
- github.com/googleapis/googleapis@common-protos-1_3_1
NOTE: Use only git tag or full hash of commit version.
By default, easyp
use $HOME/.easyp
dir to storage cache and downloaded modules, you could override it with EASYPPATH
env var.
Auto-completion
zsh auto-completion
- Add the following line to your ~/.zshrc startup script:
source <(easyp completion zsh)
- Re-launch your shell or run:
source ~/.zshrc
Bash auto-completion
- Install bash-completion and add the software to your
~/.bashrc
.
- Add the following line to your ~/.bashrc startup script:
source <(easyp completion bash)
- Re-launch your shell or run:
source ~/.bashrc