Releases: nir0s/ghost
Releases · nir0s/ghost
v0.6.1 (contains changes of all previous versions which were not released)
0.6.1 (2017.04.02)
- Remove official Python2.6 support! Most things will probably work, but not guaranteed.
- Add
ghost ssh
connecting through proxy using ProxyCommand. - Add
ghost put
--add
flag to add values to an existing key. - Fix init in TinyDB and SqlAlchemy backends not idempotent.
- Fix SqlAlchemy backend not creating a non-existing database on non-SQLite storage.
- Allow to pass arbitrary directives to any ssh command via the
extend
value in anssh
type key. - Delete stale stash when initializing a stash without being able to write its passphrase file due to filesystem access errors.
- Disallow using a stash before it is initialized.
- Fix
ghost ssh
failing miserably on non-existing key. - Fix load not working due to it using the wrong passphrase.
0.6.0 (2017-03-26)
- Allow to use multiple stashes on the same backend
- Allow to lock and unlock keys to prevent deletion and modification of critical keys
- Allow to list close matches or containing strings
- Add key type system to allow for additional functionality. See github issue #106
- Add
ghost ssh
command to allow to connect to a machhine based on a key of typessh
- Error out instead of overriding passphrase.ghost file when generating two stashes
- Re-encrypt on migrate only if passphrases are different between the stashes
- Change
transation.log
file name toaudit.log
- Add more verbose logging in the CLI
0.5.0 (2017-02-07)
- Use default stash path for tinydb when using the CLI so that it is no longer a required option
- Add automatic reading of
passphrase.ghost
from different locations (cwd/..., ~/.ghost/... and /etc/ghost/...) - Allow to
get
a single value from a key (e.g. ghost get aws SECRET_ACCESS_KEY) - Validate passphrase before any action, not only read
- Add file-based transation log for auditing purposes
- Make
init
idempotent on all storage backends - Disallow deleting the built in
passphrase
key - Fix vault path using backslackes instead of slashes on Windows
- Output new line when retrieving key using CLI
- Greatly simplify storage testing framework to allow adding storages much easily
- Improve code quality
0.4.1 (2016-10-11)
- Fix any remaining Windows related issues and fix the tests. Windows support is now official.
0.4.0 (2016-10-11)
- Add a Vault backend
- Add an Elasticsearch backend
- Add a Consul backend (Thanks tehasdf!)
- Add
migrate
command and API which performs a comfortableexport
andload
from one stash to another. - Add contribution docs, backend specific docs and more elaborate docs in general.
- Add
extras_require
for the different backends so that you can now runpip install ghost[backend_name]
to install the backend's dependencies. - Verify Windows support. Ghost currently supports Windows, there are some tests to fix though.
- Provide a default stash path in the CLI for each backend type.
- Use appdirs to provide the default dir for ghost's home (Thanks jcollado!)
- Fix not being able to
stash.get(key)
twice using the API. - Fix not being able to create a stash in the
cwd
when using a file based backend like TinyDB or SQLite
First production release
- Generated passphrase will now be printed to a file (
cwd/passphrase.ghost
) instead of to the screen. - Add 99% test coverage.
- Support Python 3.
- Remove logger in favor of
click
'secho
. - Allow to choose backend using the CLI.
- Add
export
andload
CLI commands and APIs to allow to export all keys in a stash to a file and then load them, potentially to a stash of a different backend. - Add
purge
API and CLI command to delete all keys in a stash. - Replace
--value
options with unlimited arguments in the form ofkey=value
for thevalue
field of a key. - Add
--no-decrypt
flag to the CLI when runningghost get
. - Use SQLAlchemy PickleType for values in the SQLAlchemy Storage.
- Add
-j
flag to jsonify key list. - Remove
T
from the timestamp in themodified_at
andcreated_at
fields of a key.
First usable release
- Replace simple-crypt with cryptography for a faster and more common encryption engine.
- Replace the current inheritence implementation with a composition implementation which easily allow to implement additional backends.
- Fix a bug where a stash couldn't be initialized.
- When using the Python API, verify that the
value
field is always a dict. - Allow to retrieve a value via
stash.get_value(key=key)
- Raise an error if a stash is initialized twice in the same path
- Change the
--val
flag to--value
.--val
is just weird.