forked from nir0s/ghost
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCHANGES
99 lines (77 loc) · 5.04 KB
/
CHANGES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
**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 an `ssh` 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 type `ssh`
* 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 to `audit.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 comfortable `export` and `load` 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 run `pip 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
**0.3.0** (2016-09-25)**
* 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`'s `echo`.
* Allow to choose backend using the CLI.
* Add `export` and `load` 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 of `key=value` for the `value` field of a key.
* Add `--no-decrypt` flag to the CLI when running `ghost get`.
* Use SQLAlchemy PickleType for values in the SQLAlchemy Storage.
* Add `-j` flag to jsonify key list.
* Remove `T` from the timestamp in the `modified_at` and `created_at` fields of a key.
**0.2.0** (2016-09-18)**
* 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.
**0.1.4** (2016-09-15)**
* First release of ghost
* Support both TinyDB and SQLAlchemy as supported backends.
* Allow to put, modify, get, delete and list keys.
* Provide encryption via simple-crypt.
* Each key contains the following fields: `description`, `name`, `value`, `created_at`, `modified_at`, `uid` and `metadata`.
* Provide a click based CLI using the TinyDB backend (for now, you can't choose the backend to use when using the CLI. This will be changed later on.)
* When using the CLI, allow to both pretty print and JSON print when retrieving a key.
* Allow to get a