From 432a5f1e5a5a46ee04292703fde951f6675c714f Mon Sep 17 00:00:00 2001 From: Randall Winkhart Date: Sat, 1 Apr 2023 21:29:25 -0400 Subject: [PATCH] Update documentation for v1.4.1 Former-commit-id: 044613130dbc6d7cec9bb3a0d64f0727b868442b Former-commit-id: 82716630a6f2395a89ed00398acea531647703c3 --- README.md | 3 +-- extra/changelog-total | 22 +++++++++++++++++++ extra/manpage | 16 +++++++------- lib/sshyp.py | 2 +- share/doc/sshyp/changelog | 46 +++++++-------------------------------- 5 files changed, 40 insertions(+), 49 deletions(-) diff --git a/README.md b/README.md index a787b96..1d96f59 100644 --- a/README.md +++ b/README.md @@ -34,8 +34,7 @@ What sshyp can do: - everything above on Haiku, FreeBSD, Linux, and Termux! # Installation -**Important:** *Bash completions will NOT function until you install your distribution's "bash-completion" package or manually source the Bash completion script.* -*A restart of your terminal is required after installing "bash-completion".* +**Important:** *Shell completions (both Bash and ZSH) may require additional configuration on some distributions - please see [this page](https://github.com/rwinkhart/sshyp/wiki/Completions) of the wiki for support.* Please see the [installation guide](https://github.com/rwinkhart/sshyp/wiki/Installation) in the sshyp wiki for directions specific to your distribution/OS. diff --git a/extra/changelog-total b/extra/changelog-total index e32ec47..3285c59 100644 --- a/extra/changelog-total +++ b/extra/changelog-total @@ -1,3 +1,25 @@ +sshyp v1.4.1 + +the argumentative agronomist update - patch one + +this release improves sshyp's shell completions by adding zsh support and significantly optimizing and improving Bash support + +user-facing features: + +- zsh completion support + ^ ensure modern completions are enabled in your ~/.zshrc + +fixes/optimizations: + +- Bash completions are now much faster due to the use of recursive globbing +- Bash completions have been modified to be functionally similar to the new zsh completions + +other notable changes: + +- some official packages now use more space-efficient compression + +<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><> + sshyp v1.4.0 the argumentative agronomist update diff --git a/extra/manpage b/extra/manpage index 57db2ba..38993a3 100644 --- a/extra/manpage +++ b/extra/manpage @@ -1,4 +1,4 @@ -.TH sshyp 1 "04 March 2023" "v1.4.0" "sshyp man page" +.TH sshyp 1 "02 April 2023" "v1.4.1" "sshyp man page" .SH NAME sshyp \- A very simple self-hosted, synchronized password manager for UNIX(-like) systems. Alternative to (and compatible with) pass/password-store. .SH SYNOPSIS @@ -14,25 +14,25 @@ Setting up sshyp for the first time or altering its configuration (also recommen Viewing the entry database: sshyp -Reading an existing entry saved as ~/.local/share/sshyp/development/github.gpg: +Reading an existing entry saved as '~/.local/share/sshyp/development/github.gpg': sshyp /development/github -Copying the password of an existing entry saved as ~/.local/share/sshyp/financial/bank.gpg: +Copying the password of an existing entry saved as '~/.local/share/sshyp/financial/bank.gpg': sshyp /financial/bank copy -p -Editing the username of an existing entry saved as ~/.local/share/sshyp/game.gpg: +Editing the username of an existing entry saved as '~/.local/share/sshyp/game.gpg': sshyp /game edit -u -Making a new entry saved as ~/.local/share/sshyp/school/university.gpg using the built-in password generator: +Making a new entry saved as '~/.local/share/sshyp/school/university.gpg' using the built-in password generator: sshyp /school/university gen -Creating a note-only entry saved as ~/.local/share/sshyp/notes/test note.gpg: +Creating a note-only entry saved as '~/.local/share/sshyp/notes/test note.gpg': sshyp /notes/test\ note add -n Manually syncing entries with the server: sshyp sync -Removing an existing folder saved as ~/.local/share/sshyp/social: +Removing an existing folder saved as '~/.local/share/sshyp/social': sshyp /social/ shear .SH EXAMPLES (SERVER) Setting up the quick-unlock whitelist: @@ -106,7 +106,7 @@ Client setup: Run "sshyp tweak" and follow the prompts Copy the generated public SSH key (located at ~/.ssh/sshyp.pub) to the server using preferred method (manually adding to authorized_keys, ssh-copy-id, etc.) If you already have entries on the server, sync them using "sshyp sync" - Optionally, Bash completions can be enabled by installing your distribution's "bash-completion" package and restarting your terminal + Optionally, shell completions (both Bash and ZSH) can be enabled with your shell's respective method Done! Please note that the server setup intentionally does not allow the reading of entries (it does not allow adding a gpg decryption key). For security purposes, only clients can read entries. diff --git a/lib/sshyp.py b/lib/sshyp.py index 79baeb0..f84481f 100755 --- a/lib/sshyp.py +++ b/lib/sshyp.py @@ -329,7 +329,7 @@ def print_info(): # prints help text based on argument 'randall winkhart\u001b[38;5;15;48;5;15m \u001b[38;5;7;48;5;8m/\u001b[0m') print('\u001b[38;5;7;48;5;8m/\u001b[38;5;15;48;5;15m ' '\u001b[38;5;7;48;5;8m/\u001b[0m') - print('\u001b[38;5;7;48;5;8m/\u001b[38;5;15;48;5;15m \u001b[38;5;15;48;5;8mversion 1.4.0' + print('\u001b[38;5;7;48;5;8m/\u001b[38;5;15;48;5;15m \u001b[38;5;15;48;5;8mversion 1.4.1' '\u001b[38;5;15;48;5;15m \u001b[38;5;7;48;5;8m/\u001b[0m') print('\u001b[38;5;7;48;5;8m/\u001b[38;5;15;48;5;15m \u001b[38;5;15;48;5;8mthe argumentative ' 'agronomist update\u001b[38;5;15;48;5;15m \u001b[38;5;7;48;5;8m/\u001b[0m') diff --git a/share/doc/sshyp/changelog b/share/doc/sshyp/changelog index b642242..0217bfe 100644 --- a/share/doc/sshyp/changelog +++ b/share/doc/sshyp/changelog @@ -1,52 +1,22 @@ -sshyp v1.4.0 +sshyp v1.4.1 -the argumentative agronomist update +the argumentative agronomist update - patch one -this release overhauls sshyp's argument system and further streamlines -the experience with optimizations and the removal of legacy features - -compatibility-breaking changes: - -- there are no technical breaking changes, but the UX has changed significantly due to the new argument system (detailed below) +this release improves sshyp's shell completions by adding zsh support and significantly optimizing and improving Bash support user-facing features: -- when typing an entry/folder name, it is now always the FIRST argument - ^ e.g. instead of "sshyp copy -p /example/test", it would now be "sshyp /example/test copy -p" - ^ this allows more easily editing the previous command to copy/edit a different field -- better extension integration - ^ extensions can now ship with a config file that sshyp can use to call them from standard sshyp arguments - ^ the first extension supporting this is sshyp-mfa - ^ if sshyp-mfa v1.4.0.1+ is installed, "sshyp /example/test copy -m" will copy MFA keys to your clipboard -- entry/folder names now MUST be specified as arguments - ^ there is no longer a separate input prompt if the entry/folder name is not provided as an argument - ^ the input prompt was a legacy feature from before arguments could specify entrys/folders with shell completion - ^ the entry list generated by entry_list_gen() is still present and can be viewed by running "sshyp" with no arguments -- better Bash completions - ^ now correctly places backslashes to escape spaces in entry/folder names - ^ slightly faster than the previous iteration -- IPv6 configuration support +- zsh completion support + ^ ensure modern completions are enabled in your ~/.zshrc fixes/optimizations: -- replaced "+=" with ".append" when extending lists to prevent creating an additional list -- optimized usage of "str.split()" and replaced it with "str.splitlines()" where applicable -- more concise "if... in ()" syntax replaces long "if" statement chains -- lists have been substituted with tuples where applicable -- entry_list_gen() has been re-written to be much smaller and faster -- os.path is now used in place of pathlib.Path in areas where it is faster -- the user's home directory is saved to a variable to prevent running expanduser() every time it is needed +- Bash completions are now much faster due to the use of recursive globbing +- Bash completions have been modified to be functionally similar to the new zsh completions other notable changes: -- removed some uncommonly used, redundant arguments - ^ e.g. "-rm", "-s", "delete" - ^ their functionality was NOT removed, just their redundant arguments, since "shear", "sync", and "del" are the accepted syntax -- errors containing entry/folder names reinforce correct syntax by adding leading/following slashes where necessary -- thanks to pull request #25, there are new error messages for the read shortcut - ^ includes when no entry name is provided or the entry name only refers to a directory -- directories provided in user input are no longer denoted by a following slash - ^ instead, os.path is used to determine if the user is referring to a file or directory +- some official packages now use more space-efficient compression <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>