sshyp v1.0.0

The Polished Trotters Update

This release brings 'sshyp' in line with the original goals of the project.
As such, it is being crowned "v1.0.0", and is considered a stable base for future expansions.

Features:

- sshyp has been modified to run on Haiku, an open-source re-implementation of BeOS
    ^ new package formats have been added for Haiku, FreeBSD, and Red Hat distributions (such as Fedora)
- the entry format has been changed to support entries created in pass/password-store
    ^ this change requires existing entry libraries to be converted - see the sshyp v1.0.0 release page on GitHub for a conversion script
- majorly overhauled visual experience for sshyp
    ^ this includes a new entry list, a new entry readout, colored output, ascii art, and more!
- entries can now optionally be passed as arguments, directly
    ^ as opposed to the user being prompted for an entry name after running a command

Changes:

- corrected outdated licensing and copyright information
- 'if __name__=="__main__":' convention is now used
- help screens have been overhauled
- improved password generator to guarantee more secure results
- fixed errors when trying to sync with a multi-word entry on the server
- sshync now uses 'scp' (via the sftp protocol), rather than 'sftp'
- rename function now properly allows for renaming folders
- renaming an entry/folder will now properly delete the old entry/folder from the server
- entry previews at the time of entry creation/editing no longer require entering the gpg password more times than necessary
- the clipboard now automatically clears after 30 seconds
- sshyp server no longer needs to create copies of its libraries in ~/
- added more and improved existing exceptions
- the lock file is now decrypted to /dev/null
- ...and lots of minor (under the hood) changes!

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

sshyp 2022.02.16.fr4.7

The High-Tech Shears Update - Patch 7

This release enables recursive folder syncing.

Note: Upgrading from releases older than fr4.7 requires the configuration ("sshyp tweak") to be re-done, as the configuration process has changed.

Changes:

- re-wrote folder checking function to fetch subdirectories recursively
- added in user-facing messages for when folders are being synced or entries are being removed
- fixed a typo preventing folder syncing from working (actually tested this time)

&&

Planned for next major update (fr5, The sshyp Doing a Split Update):

sshyp:
- sshyp has recieved a major visual overhaul
    ^ this includes the new file list and thematic text art

sshync:
- sshync has been split into a separate package and now has standalone functionality as a backup/syncing utility
    ^ more details will be available in the sshync repo, once it is created

&&

Planned for next, next major update (fr6, The Farmer Shearing the sshyp Update):

- imporove password generator to guarantee more secure results
- enforce permissions on the server-side
- allow for copying entire notes (not just first line)
- ability to pass entries as arguments for more functions

&&

Backlog:

- create separate gui frontend targetting mobile and desktop Linux
- auto-completion on tab (currently unsure of best way to make this work)

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

sshyp 2022.02.16.fr4.6

The High-Tech Shears Update - Patch 6

This release addresses a critical typo.

Note: Upgrading from releases older than fr4.6 requires the configuration ("sshyp tweak") to be re-done, as the configuration process has changed.

Changes:

- corrected a typo error causing folder syncing issues

&&

Planned for next major update (fr5, The sshyp Doing a Split Update):

sshyp:
- sshyp has recieved a major visual overhaul
    ^ this includes the new file list and thematic text art

sshync:
- sshync has been split into a separate package and now has standalone functionality as a backup/syncing utility
    ^ more details will be available in the sshync repo, once it is created

&&

Planned for next, next major update (fr6, The Farmer Shearing the sshyp Update):

- when syncing, a check is made to see if any folders are not on all devices - if the check comes back true, it is corrected (in sshyp)
- imporove password generator to guarantee more secure results
- enforce permissions on the server-side
- allow for copying entire notes (not just first line)
- ability to pass entries as arguments for more functions

&&

Backlog:

- create separate gui frontend targetting mobile and desktop Linux
- auto-completion on tab (currently unsure of best way to make this work)

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

sshyp 2022.02.16.fr4.5

The High-Tech Shears Update - Patch 5

This release addresses a critical syntax error.

Note: Upgrading from releases older than fr4.5 requires the configuration ("sshyp tweak") to be re-done, as the configuration process has changed.

Changes:

- corrected a syntax error causing critical functionality issues

&&

Planned for next major update (fr5, The sshyp Doing a Split Update):

sshyp:
- sshyp has recieved a major visual overhaul
    ^ this includes the new file list and thematic text art

sshync:
- sshync has been split into a separate package and now has standalone functionality as a backup/syncing utility
    ^ more details will be available in the sshync repo, once it is created

&&

Planned for next, next major update (fr6, The Farmer Shearing the sshyp Update):

- when syncing, a check is made to see if any folders are not on all devices - if the check comes back true, it is corrected (in sshyp)
- imporove password generator to guarantee more secure results
- enforce permissions on the server-side
- allow for copying entire notes (not just first line)
- ability to pass entries as arguments for more functions

&&

Backlog:

- create separate gui frontend targetting mobile and desktop Linux
- auto-completion on tab (currently unsure of best way to make this work)

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

sshyp 2022.02.16.fr4.4

The High-Tech Shears Update - Patch 4

This release automatically generates user-created folders on new client devices.

Note: Upgrading to releases in the fr4 series requires the configuration ("sshyp tweak") to be re-done, as a device name now must be set (for multi-client deletion). Even upgrading from fr4.3 to fr4.4 will require re-running "sshyp tweak" due to file name changes.

Features:

- implemented proper folder syncing for new clients and clients missing folders that exist server-side

Changes:

- old device names are now automatically deleted (locally) when running "sshyp tweak", to prevent conflicts

&&

Planned for next major update (fr5, The sshyp Doing a Split Update):

sshyp:
- sshyp has recieved a major visual overhaul
    ^ this includes the new file list and thematic text art

sshync:
- sshync has been split into a separate package and now has standalone functionality as a backup/syncing utility
    ^ more details will be available in the sshync repo, once it is created

&&

Planned for next, next major update (fr6, The Farmer Shearing the sshyp Update):

- when syncing, a check is made to see if any folders are not on all devices - if the check comes back true, it is corrected (in sshyp)
- imporove password generator to guarantee more secure results
- enforce permissions on the server-side
- allow for copying entire notes (not just first line)
- ability to pass entries as arguments for more functions

&&

Backlog:

- create separate gui frontend targetting mobile and desktop Linux
- auto-completion on tab (currently unsure of best way to make this work)

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

sshyp 2022.02.16.fr4.3

The High-Tech Shears Update - Patch 3

This release addresses a bug with local entry deletion.

Note: Upgrading to releases in the fr4 series requires the configuration ("sshyp tweak") to be re-done, as a device name now must be set (for multi-client deletion).

Changes:

- fixed an issue where entries could not be deleted locally

&&

Planned for next major update (fr5, The sshyp Doing a Split Update):

sshyp:
- sshyp has recieved a major visual overhaul
    ^ this includes the new file list and thematic text art

sshync:
- sshync has been split into a separate package and now has standalone functionality as a backup/syncing utility
    ^ more details will be available in the sshync repo, once it is created

&&

Planned for next, next major update (fr6, The Farmer Shearing the sshyp Update):

- when syncing, a check is made to see if any folders are not on all devices - if the check comes back true, it is corrected (in sshyp)
- imporove password generator to guarantee more secure results
- enforce permissions on the server-side
- allow for copying entire notes (not just first line)
- ability to pass entries as arguments for more functions

&&

Backlog:

- create separate gui frontend targetting mobile and desktop Linux
- auto-completion on tab (currently unsure of best way to make this work)

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

sshyp 2022.02.16.fr4.2

The High-Tech Shears Update - Patch 2

This release re-addresses a bug with local folder deletion.

Note: Upgrading to releases in the fr4 series requires the configuration ("sshyp tweak") to be re-done, as a device name now must be set (for multi-client deletion).

Changes:

- fixed an issue where folders could not be deleted locally (actually, this time)
- properly handled an exception for when the user forgets a following '/' when attempting to delete a folder

&&

Planned for next major update (fr5, The sshyp Doing a Split Update):

sshyp:
- sshyp has recieved a major visual overhaul
    ^ this includes the new file list and thematic text art

sshync:
- sshync has been split into a separate package and now has standalone functionality as a backup/syncing utility
    ^ more details will be available in the sshync repo, once it is created

&&

Planned for next, next major update (fr6, The Farmer Shearing the sshyp Update):

- when syncing, a check is made to see if any folders are not on all devices - if the check comes back true, it is corrected (in sshyp)
- imporove password generator to guarantee more secure results
- enforce permissions on the server-side
- allow for copying entire notes (not just first line)
- ability to pass entries as arguments for more functions

&&

Backlog:

- create separate gui frontend targetting mobile and desktop Linux
- auto-completion on tab (currently unsure of best way to make this work)

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

sshyp 2022.02.16.fr4.1

The High-Tech Shears Update - Patch 1

This release addresses a bug with local folder deletion.

Note: Upgrading to releases in the fr4 series requires the configuration ("sshyp tweak") to be re-done, as a device name now must be set (for multi-client deletion).

Changes:

- fixed an issue where folders could not be deleted locally
- optimized deletion flags

&&

Planned for next major update (fr5, The sshyp Doing a Split Update):

sshyp:
- sshyp has recieved a major visual overhaul
    ^ this includes the new file list and thematic text art

sshync:
- sshync has been split into a separate package and now has standalone functionality as a backup/syncing utility
    ^ more details will be available in the sshync repo, once it is created

&&

Planned for next, next major update (fr6, The Farmer Shearing the sshyp Update):

- when syncing, a check is made to see if any folders are not on all devices - if the check comes back true, it is corrected (in sshyp)
- imporove password generator to guarantee more secure results
- enforce permissions on the server-side
- allow for copying entire notes (not just first line)
- ability to pass entries as arguments for more functions

&&

Backlog:

- create separate gui frontend targetting mobile and desktop Linux
- auto-completion on tab (currently unsure of best way to make this work)

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

sshyp 2022.02.16.fr4

The High-Tech Shears Update

This release adds in a major feature: multi-client deletion (details below)

Note: This release requires the configuration ("sshyp tweak") to be re-done, as a device name now must be set (for multi-client deletion).

Features:

- added multi-client deletion
    ^ this means that when an entry is deleted from one client (and thus the server), if another client that has a copy of the deleted entry tries to sync, instead of re-uploading the deleted entry, it will now also have its entry deleted.
    ^ the current implementation requires a new Python script in addition to sshyp and sshync

Changes:

- fixed an issue where sshyp would use the wrong SSH key when trying to delete entries from or create folders on the server
    ^ this is a fix that was recently applied to sshync - turns out I made the same mistake in sshyp
- deleting folders should now work properly with "sshyp shear" if the directory is entered with a following "/"

&&

Planned for next major update (fr5, The sshyp Doing a Split Update):

sshyp:
- sshyp has recieved a major visual overhaul
    ^ this includes the new file list and thematic text art

sshync:
- sshync has been split into a separate package and now has standalone functionality as a backup/syncing utility
    ^ more details will be available in the sshync repo, once it is created

&&

Planned for next, next major update (fr6, The Farmer Shearing the sshyp Update):

- when syncing, a check is made to see if any folders are not on all devices - if the check comes back true, it is corrected (in sshyp)
- imporove password generator to guarantee more secure results
- enforce permissions on the server-side
- allow for copying entire notes (not just first line)
- ability to pass entries as arguments for more functions

&&

Backlog:

- create separate gui frontend targetting mobile and desktop Linux
- auto-completion on tab (currently unsure of best way to make this work)

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

sshyp 2022.01.26.fr3.4

The Boxing Update - Patch 4

This release is a hotfix for 2022.01.17.fr3.3. It fixes a major bug with sshync.

Changes:

- sshync now correctly uses the auto-generated SSH key in all operations
- an exception has been added for attempting to delete/shear a file that does not exist
- the manpage has been updated and now includes setup instructions

&&

Planned for next major update (fr4, The sshyp Doing a Split Update):

sshyp:
- sshyp has recieved a major visual overhaul
    ^ this includes the new file list and thematic text art

sshync:
- sshync has been split into a separate package and now has standalone functionality as a backup/syncing utility
    ^ more details will be available in the sshync repo, once it is created

&&

Planned for next, next major update (fr5, The Farmer Shearing the sshyp Update):

- allow for multi-client deletion... somehow (in sshync)
- when syncing, a check is made to see if any folders are not on all devices - if the check comes back true, it is corrected (in sshyp)
- imporove password generator to guarantee more secure results
- enforce permissions on the server-side
- allow for copying entire notes (not just first line)
- ability to pass entries as arguments for more functions

&&

Backlog:

- create separate gui frontend targetting mobile and desktop Linux
- auto-completion on tab (currently unsure of best way to make this work)

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

sshyp 2022.01.17.fr3.3

The Boxing Update - Patch 3

This release is a hotfix for 2022.01.16.fr3.2. It fixes major bugs, especially with Termux.

Changes:

- the temporary directory for Termux is now sym-linked with its full path (no longer dangling)
- the copy function can now properly detect if Termux is being used
- ~/.config is created, if it does not already exist
- "sshyp shear" now functions again, as a bug with the lock file has been fixed
- sshync -should- now properly detect the database file on all platforms (was broken on Termux)
- total lines of code have been slightly reduced with various small optimizations

Additions planned for minor releases:

- updated the manpage with more information regarding how sshyp works and how to set it up
- ensured that it is now impossible for ghosts of entires to remain in /dev/shm
- reduced total lines of code with small optimizations

&&

Planned for next major update (fr4, The sshyp Doing a Split Update):

sshyp:
- sshyp has recieved a major visual overhaul
    ^ this includes the new file list and thematic text art

sshync:
- sshync has been split into a separate package and now has standalone functionality as a backup/syncing utility
    ^ more details will be available in the sshync repo, once it is created

&&

Planned for next, next major update (fr5, The Farmer Shearing the sshyp Update):

- allow for multi-client deletion... somehow (in sshync)
- when syncing, a check is made to see if any folders are not on all devices - if the check comes back true, it is corrected (in sshyp)
- imporove password generator to guarantee more secure results
- enforce permissions on the server-side
- allow for copying entire notes (not just first line)
- ability to pass entries as arguments for more functions

&&

Backlog:

- create separate gui frontend targetting mobile and desktop Linux
- auto-completion on tab (currently unsure of best way to make this work)

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

sshyp 2022.01.16.fr3.2

The Boxing Update - Patch 2

This release is a hotfix for 2022.01.16.fr3.1. It fixes major bugs, including one massively impacting Termux.

Changes:

- sshyp now uses a symlink to the temporary storage directory, allowing for easy implementation of different temporary directories on different platforms
    ^ the first usage of this is enabling the use of temporary storage on Termux
- sshync now properly auto-generates its config directory 

Additions planned for minor releases:

- updated the manpage with more information regarding how sshyp works and how to set it up
- ensured that it is now impossible for ghosts of entires to remain in /dev/shm
- reduced total lines of code with small optimizations

&&

Planned for next major update (fr4, The sshyp Doing a Split Update):

sshyp:
- sshyp has recieved a major visual overhaul
    ^ this includes the new file list and thematic text art

sshync:
- sshync has been split into a separate package and now has standalone functionality as a backup/syncing utility
    ^ more details will be available in the sshync repo, once it is created

&&

Planned for next, next major update (fr5, The Farmer Shearing the sshyp Update):

- allow for multi-client deletion... somehow (in sshync)
- when syncing, a check is made to see if any folders are not on all devices - if the check comes back true, it is corrected (in sshyp)
- imporove password generator to guarantee more secure results
- enforce permissions on the server-side
- allow for copying entire notes (not just first line)
- ability to pass entries as arguments for more functions

&&

Backlog:

- create separate gui frontend targetting mobile and desktop Linux
- auto-completion on tab (currently unsure of best way to make this work)

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

sshyp 2022.01.16.fr3.1

The Boxing Update - Patch 1

This release is a hotfix for 2022.01.13.fr3. It fixes sshync/syncing support after the changes in the last release.

Changes:

- sshync has been updated to work with the new config directory
- sshync now uses its own directory to store the database file
    ^ this is preperation for separating sshync into its own package
- expanduser lines in sshyp have been simplified (no user-facing impact)

Additions planned for minor releases:

- updated the manpage with more information regarding how sshyp works and how to set it up
- ensured that it is now impossible for ghosts of entires to remain in /dev/shm
- reduced total lines of code with small optimizations

&&

Planned for next major update (fr4, The sshyp Doing a Split Update):

sshyp:
- sshyp has recieved a major visual overhaul
    ^ this includes the new file list and thematic text art

sshync:
- sshync has been split into a separate package and now has standalone functionality as a backup/syncing utility
    ^ more details will be available in the sshync repo, once it is created

&&

Planned for next, next major update (fr5, The Farmer Shearing the sshyp Update):

- allow for multi-client deletion... somehow (in sshync)
- when syncing, a check is made to see if any folders are not on all devices - if the check comes back true, it is corrected (in sshyp)
- imporove password generator to guarantee more secure results
- enforce permissions on the server-side
- allow for copying entire notes (not just first line)
- ability to pass entries as arguments for more functions

&&

Backlog:

- create separate gui frontend targetting mobile and desktop Linux
- auto-completion on tab (currently unsure of best way to make this work)

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

sshyp 2022.01.13.fr3

The Boxing Update

This release adapts sshyp to be compatible with Termux and allows for packaging for various distributions in addition to Arch Linux.

Features:

- the copy function now has support for termux-clipboard-set from termux-api
    ^ this allows clipboard functionality to work on Termux

Changes:

- sshyp no longer writes to/reads from /var
    ^ configuration files are now stored under the user's home directory in ~/.config/sshyp
    ^ this change allows for compatibility with less standard environments, such as Termux on Android

Additions planned for minor releases:

- updated the manpage with more information regarding how sshyp works and how to set it up
- ensured that it is now impossible for ghosts of entires to remain in /dev/shm
- reduced total lines of code with small optimizations

&&

Planned for next major update (fr4, The sshyp Doing a Split Update):

sshyp:
- sshyp has recieved a major visual overhaul
    ^ this includes the new file list and thematic text art

sshync:
- sshync has been split into a separate package and now has standalone functionality as a backup/syncing utility
    ^ more details will be available in the sshync repo, once it is created

&&

Planned for next, next major update (fr5, The Farmer Shearing the sshyp Update):

- allow for multi-client deletion... somehow (in sshync)
- when syncing, a check is made to see if any folders are not on all devices - if the check comes back true, it is corrected (in sshyp)
- imporove password generator to guarantee more secure results
- enforce permissions on the server-side
- allow for copying entire notes (not just first line)
- ability to pass entries as arguments for more functions

&&

Backlog:

- create separate gui frontend targetting mobile and desktop Linux
- auto-completion on tab (currently unsure of best way to make this work)

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

sshyp 2022.01.10.fr2.3

The Lighter Update - Patch 3

This release is a hotfix for 2021.12.01.fr2.2. It features critical security fixes and quality-of-life improvements.

New features:

- a man page has been added

Changes:

- folders in /dev/shm are no longer created before input from the user (fixes critical security flaws)
- fixed syncing of files (specifically downloading) with special characters, such as '('
- fixed program still continuing after trying to edit an entry that doesn't exist
- the gen command has been updated to use the newer notetaking system
- printing functions in sshyp have been combined into one function (arguments determine section to print, fewer lines of code)
- file not found exceptions have been re-implemented
- .lower() is now used to remove casing when checking inputs
- removed an old reference to "rsync" in the configuration dialog

Planned for next major update (The Fluffier Update):

- new visual features
    ^ this includes the new file list and thematic text art. sshyp will be
    getting a retro computing theme.
- packages for more environments
    ^ "sshyp" will be officially packaged for Arch Linux, Alpine Linux, and Termux (Android).
    Debian/Ubuntu and Fedora packaging will come later.
- imporove password generator to guarantee more secure results
- when syncing, a check is made to see if any folders are not on all devices - if the check comes back true, it is corrected (in sshyp)

Planned for next, next major update (The Shears Update Pt. 1):

- enforce permissions on the server-side
- allow for copying entire notes (not just first line)
- allow for multi-client deletion... somehow (in sshync)
- detatch sshync and make it a separate package

Planned for next, next, next major update (The Shears Update Pt. 2):

- ability to pass entries as arguments for more functions
- auto-completion on tab (currently unsure of best way to make this work)

Backlog:

- package for more Linux distributions, such as Debian and Fedora
- create separate gui frontend targetting mobile and desktop Linux

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

sshyp 2021.12.01.fr2.2

The Lighter Update - Patch 2

This release is a hotfix for 2021.12.01.fr2.1.

Changes:

- a major fix for "/var/lib/sshync_database" needing to already exist server-side
- a major fix for syncing functionality  (it should actually work now)
- silenced some sftp output

An fr2.3 patch is planned for this version. It will include the following:

- fixes for any new bugs that may be discovered in the new sshyp and sshync code
- the gen command in sshyp will be updated to use the newer notetaking system
- printing functions in sshyp will be combined into one function (arguments will determine section to print)
- file not found exceptions will be re-implemented
- when syncing, a check will be made to see if any folders are not on all devices and this will be corrected

Planned for next major update (The Fluffier Update):

- new visual features
    ^ this includes the new file list and thematic text art. sshyp will be
    getting a retro computing theme.
- packages for more environments
    ^ "sshyp" will be officially packaged for Arch Linux, Alpine Linux, and Termux (Android).
    Debian/Ubuntu and Fedora packaging will come later.
- imporove password generator to guarantee more secure results

Planned for next, next major update (The Shears Update Pt. 1):

- enforce permissions on the server-side
- allow for copying entire notes (not just first line)
- allow for multi-client deletion... somehow
- detatch sshync and make it a separate package
- manpage

Planned for next, next, next major update (The Shears Update Pt. 2):

- ability to pass entries as arguments for more functions
- auto-completion on tab (currently unsure of best way to make this work)

Backlog:

- package for more Linux distributions, such as Debian and Fedora
- create separate gui frontend targetting mobile and desktop Linux

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

sshyp 2021.12.01.fr2.1

The Lighter Update - Patch 1

This release is a hotfix for 2021.12.01.fr2.

Changes:

- fixed a bug where "sshyp tweak" would not function on new installations
- moved the argument parser to the global process
- running "sshyp version" or "sshyp -v" no longer triggers syncing
- folders are now created natively with Python, rather than through system commands

An fr2.2 patch is planned for this version. It will include the following:

- fixes for any new bugs that may be discovered in the new sshyp and sshync code
- the gen command in sshyp will be updated to use the newer notetaking system
- printing functions in sshyp will be combined into one function (arguments will determine section to print)
- file not found exceptions will be re-implemented

Planned for next major update (The Fluffier Update):

- new visual features
    ^ this includes the new file list and thematic text art. sshyp will be
    getting a retro computing theme.
- packages for more environments
    ^ "sshyp" will be officially packaged for Arch Linux, Alpine Linux, and Termux (Android).
    Debian/Ubuntu and Fedora packaging will come later.
- imporove password generator to guarantee more secure results

Planned for next, next major update (The Shears Update Pt. 1):

- enforce permissions on the server-side
- allow for copying entire notes (not just first line)
- allow for multi-client deletion... somehow
- detatch sshync and make it a separate package
- manpage

Planned for next, next, next major update (The Shears Update Pt. 2):

- ability to pass entries as arguments for more functions
- auto-completion on tab (currently unsure of best way to make this work)

Backlog:

- package for more Linux distributions, such as Debian and Fedora
- create separate gui frontend targetting mobile and desktop Linux

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

sshyp 2021.12.01.fr2

The Lighter Update

This release features a major re-write of old "rpass" code.
sshyp is now more reliable and better documented.

New features:

- a full re-write of the old "rpass" code used in the last release
    ^ includes more reliable argument parsing and various optimizations
- a full re-write of "sshync", many issues fixed
    ^fixed many instances where sshync would refuse to upload/download
    ^fixed errors that were being thrown despite sshync working as intended
- new folders are now also created on the server

Changes:

- nested folders actually work now
- multi-word entry and folder titles are fixed

An fr2.1 patch is planned for this version. It will include the following:

- fixes for any new bugs that may be discovered in the new sshyp and sshync code
- the gen command in sshyp will be updated to use the newer notetaking system
- printing functions in sshyp will be combined into one function (arguments will determine section to print)
- file not found exceptions will be re-implemented
- the argument parser will be moved to the global process (no need for it to be in a function)
- folders will be created natively in python

Planned for next major update (The Fluffier Update):

- new visual features
    ^ this includes the new file list and thematic text art. sshyp will be
    getting a retro computing theme.
- packages for more environments
    ^ "sshyp" will be officially packaged for Arch Linux, Alpine Linux, and Termux (Android).
    Debian/Ubuntu and Fedora packaging will come later.
- imporove password generator to guarantee more secure results

Planned for next, next major update (The Shears Update Pt. 1):

- allow for copying entire notes (not just first line)
- allow for multi-client deletion... somehow
- detatch sshync and make it a separate package
- manpage

Planned for next, next, next major update (The Shears Update Pt. 2):

- ability to pass entries as arguments for more functions
- auto-completion on tab (currently unsure of best way to make this work)

Backlog:

- package for more Linux distributions, such as Debian and Fedora
- create separate gui frontend targetting mobile and desktop Linux

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

sshyp 2021.11.05.fr1

First public release of sshyp.

This release fixes major bugs from rpass and rebrands the project.

New features:

- an entirely new syncing back-end called sshync (custom Python wrapper around sftp)
    ^ in thoery, all syncing-related data loss should now be fixed, however, this new
    system has just been created and is still under testing. Maybe wait for a few patches
    before trusting this system.

Changes:

- branding has been updated to reflect new project name and goals
- custom directories, custom ssh keys, and offline only mode are removed (may be temporary)
    ^ the configuration wizard is being re-written in the next major update

Planned for next update (The Fluffy Update):

- modularized and optimized code
    ^ some older, bad code from "rpass" will be re-written.
- new visual features
    ^ this includes the new file list and thematic text art. sshyp will be
    getting a retro computing theme.
- packages for more environments
    ^ "sshyp" will be officially packaged for Arch Linux, Alpine Linux, and Termux (Android).
    Debian/Ubuntu and Fedora packaging will come later.

Planned for next update (The Sheep w/Shears Update):

- allow for copying entire notes (not just first line)
- allow for multi-client deletion... somehow
- ability to pass entries as arguments for more functions
- detatch sshync and make it a separate package
- manpage

Planned, no timeline:

- create separate gui frontend targetting mobile devices (Android + Linux phones)
    ^ the gui will also function on desktop linux
- package for more Linux distributions, such as Debian and Fedora)
- auto-completion on tab (currently unsure of best way to make this work)

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

rpass 2021.11.01.mr5.1

The Notetaker Update - Patch 1

This is the FINAL release of "rpass".
After this release, the project will be rebranded as "sshyp".

rpass's syncing system is fundamentally broken, hence the need for "sshyp"
and its new syncing system. I would highly advise against using this release.

New features:

- none

Changes:

- fixed an issue with copying notes (currently only copies first line, will be changed in the future)
- rpass is validated to work with Python 3.10 (no changes were needed)

Planned for next update (sshyp fr1)

- full project rebrand ("sshyp")
- new syncing back-end

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

rpass 2021.10.07.mr5

The Notetaker Update - Fifth main release of rpass

This release overhauls the note-taking system and provides general improvements
to overall code quality, including optimizations, bug fixes, and security improvements.

New features:

- notes are now edited in nano and can be split across multiple lines
- password confirmation has been added for entry deletion

Changes:

- fixed issues with copying passwords with certain special characters, e.g. '"()|
- auto-generated ssh key now uses ed25519, rather than rsa-3072
- entry format modified to include a blank line before the notes field (old format still mostly compatible)
- rpass is now much better at catching bad arguments
- some general code cleanup

Planned for next update (The Housekeeping Update Pt. 2):

- add new file list w/color and w/o extensions + proper displaying of nested folders
- ability to pass entries as arguments for more functions
- manpage
- add more comments to code
- validate for Python 3.10

Planned for next update (The cryptpass Update):

- initial implementation of a data store for other applications (libsecret alt.)
- modularize code in preparation for GUI frontends 

Planned, no timeline:

- create separate gui frontend targetting mobile devices (first Linux phones, maybe Android at a later date - official iOS client not likely)
    ^ the gui will also function on desktop linux
- make platform agnostic (add Windows support and package for more Linux distributions, such as Alpine and Debian)
- auto-completion on tab (currently unsure of best way to make this work)

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

rpass 2021.09.15.mr4.2

The Housekeeping Update (Pt. 1) - Hotfix 2

Changes:

- sync support is fixed
- files with spaces in their names can now be properly deleted from remote servers

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

rpass 2021.09.15.mr4.1

The Housekeeping Update (Pt. 1) - Hotfix

Changes:

- the user is once again properly presented with a prompt to enter a gpg key when pressing enter through the config dialog

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

rpass-2021.09.15.mr4

The Housekeeping Update (Pt. 1) - Fourth main release of rpass

This release focuses primarily on polishing rpass and tying up loose ends before
making any major changes in the future.

New features:

- added clipboard support for copying entry information
- many common errors are now handled with proper exceptions
- offline support (sync no longer needs to be configured for rpass to function)

Changes:

- fixed gpg decryption warnings
- added version info argument
- re-ordered config wizard to make more sense
- entry deletion can now be done client-side
- removed rsyncup/rsyncdown/username/ip/port/directoryssh files,
    ^ replaced with one file that holds usernamessh, ip, port, directoryssh, and devicetype
- files should no longer be left in /dev/shm when an error is encountered
- fixed issues relating to using a non-default entry directory
- lots of optimizations have been made to reduce the size of rpass

Planned for next update (The Housekeeping Update Pt. 2):

- a clean, colorful entry list w/o file extensions
- manpage
- multi-line notes
- commented the code
- ability to pass entries as arguments for more functions
- improve exceptions for unknown arguments

Planned, no timeline:

- possible libsecret integration
- create separate gui frontend targetting mobile devices (first Linux phones, maybe Android at a later date - official iOS client not likely)
    ^ the gui will also function on desktop linux
- make platform agnostic (add Windows support and package for more Linux distributions)
- auto-completion on tab (currently unsure of best way to make this work)

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

rpass 2021.09.07.pr3.1

The Sync and Foundations Update - Hotfix

Changes:

- gpg configuration now prompts for expiration, rather than defaulting to two years
- rsync is now configured to not delete anything from any remote device when uploading
    ^ this behavior may be modified in the future - this is a quick fix to prevent data loss

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

rpass 2021.09.07.pr3

The Sync and Foundations Update - Third public release of rpass.

As of this version, rpass has its intended base set of features and is considered usable.
It will now primarily recieve bug fixes and polish updates to prepare it to go
cross-platform and to make it compatible with GUI frontends.

New features:

- rsync support!
- new entry format with URL field (for future use)
- the temporary directory (/dev/shm) for editing entries has been somewhat secured

Changes:

- 'rpass edit relocate' is now properly bound
- dropped the use of 'echo'
- added 'rsync' and 'openssh' as dependencies
- fixed a bug with deleting entries from folders
- entry directory now has more secure permissions
        ^ these permissions are re-enforced every time rpass is used
- fixed some small typos and potential bugs, made some small optimizations

Planned for next update (The Housekeeping Update):

- move to github
- get rid of gpg decryption warnings
- proper error messages using 'except'
- add exceptions for unknown arguments
- cleanup file list by exporting to document and removing .gpg, adding color
- add a manpage
- allow notes to be multiple lines long (break lines after so many characters)
- validate for Python 3.10
- properly comment the code

Planned, no timeline:

- allow to function as alternative to gnome keyring (libsecret integration)
- create separate gui frontend targetting mobile devices (first linux phones, maybe android at a later date - official iOS client not likely)
    ^ the gui will also function on desktop linux
- make platform agnostic (add windows support and package for more Linux distributions)
- ability to pass entries as arguments for more functions
- auto-completion on tab (currently unsure of best way to make this work)

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

rpass 2021.09.02.pr2

The Folder Update - Second public release of rpass.

New features:

- entry and folder titles can now have spaces and be as long as you want
- entires and folders can now be deleted with 'rpass remove' or 'rpass -rm'
- entries now properly save to folders via 'rpass add' and should no longer throw errors
- entries saved in folders are now readable
- existing entries can now be moved to, from, and between folders
- previews are now shown after creating or editing an entry

Changes:

- every pre-existing function of rpass has been updated to work with the new folder system
- dropped awk as a dependency
- removed 'argument' file in /var/lib/rpass
- reduced unneccessary characters in argument parsing to decrease compatibility issues
- ensured all user input is handled correctly as a string or an integer
- lots of miscellaneous optimizations

Expected for next update (The rsync Update):

- rsync (over ssh) support!
    ^ including any fixes, changes, or optimizations necessary to make that happen
- new file formatting with support for URLs
    ^all entries created in new format should be compatible with future versions of rpass
- secure /dev/shm with random text generator

Expected for the next (next) update (The Housekeeping Update)

- get rid of gpg decryption warnings
- proper error messages using 'except'
- add exceptions for unknown arguments
- cleanup file list by exporting to document and removing .gpg, adding color

Planned, no timeline:

- make platform agnostic (basically, add windows support)
- create separate gui frontend targetting mobile devices (first linux phones, android at a later date)
    ^ the gui will also function on desktop linux
- ability to pass entries as arguments for more functions
- auto-completion on tab

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

rpass 2021.09.01.pr1.1

First public release of rpass.

Early build, missing critical features (e.g. sync support and the ability to have spaces in filenames).

What is currently functional:

- guided configuration wizard
- generate passwords
- add existing passwords
- make notes
- sort notes and passwords into folders
- gpg encryption
- edit password/note entries
