stratisd 2.3.0
==============
Recommended Rust toolchain version: 1.48.0
Lowest supported Rust toolchain version: 1.45

Recommended Python interpreter: 3.7.9
Lowest supported Python interpreter: 3.6.8
Python linter: pylint (2.4.4)
Python auto-formatter: black (19.10b0)
Python import sorter: isort (4.3.21)

YAML linter: yamllint (1.23.0)

New Rust crate version requirements:
  - error-chain: 0.12.2

New external dependencies:
  - clevis: 15
  - clevis-luks: 15


- Introduce support for Clevis encryption policies:
  https://github.com/stratis-storage/stratisd/pull/2315
  https://github.com/stratis-storage/stratisd/pull/2314

- Tidies and Maintenance:
  https://github.com/stratis-storage/stratisd/pull/2332
  https://github.com/stratis-storage/stratisd/pull/2330
  https://github.com/stratis-storage/stratisd/pull/2329
  https://github.com/stratis-storage/stratisd/pull/2319
  https://github.com/stratis-storage/stratisd/pull/2317
  https://github.com/stratis-storage/stratisd/pull/2311
  https://github.com/stratis-storage/stratisd/pull/2309
  https://github.com/stratis-storage/stratisd/pull/2304
  https://github.com/stratis-storage/stratisd/pull/2299


stratisd 2.2.1
==============
Recommended Rust toolchain version: 1.47.0
Lowest supported Rust toolchain version: 1.45

Recommended Python interpreter: 3.7.9
Lowest supported Python interpreter: 3.6.8
Python linter: pylint (2.4.4)
Python auto-formatter: black (19.10b0)
Python import sorter: isort (4.3.21)

YAML linter: yamllint (1.23.0)

New Rust crate version requirements:
  - env_logger: 0.8
  - itertools: 0.9
  - nix: 0.18
  - rand: 0.7
  - semver: 0.11
  - uuid: 0.8


- Rewrite mechanism to read encryption key from a file descriptor:
  https://github.com/stratis-storage/stratisd/pull/2294

- Make sure paths of devices passed as arguments to D-Bus calls are absolute:
  https://github.com/stratis-storage/stratisd/pull/2264

- Make sure that names of filesystems and pools do not include characters
  that udev will substitute underscores for:
  https://github.com/stratis-storage/stratisd/issues/2265
  https://github.com/stratis-storage/stratisd/pull/2276

- Use portable types from the libc crate in method calls:
  https://github.com/stratis-storage/stratisd/issues/2260
  https://github.com/stratis-storage/stratisd/pull/2261

- Use KeyDescription type in trait methods:
  https://github.com/stratis-storage/stratisd/issues/2156
  https://github.com/stratis-storage/stratisd/pull/2271
  https://github.com/stratis-storage/stratisd/pull/2268

- Make error message on failure to unlock device more specific:
  https://github.com/stratis-storage/stratisd/pull/2251

- Tidies and Maintenance:
  https://github.com/stratis-storage/stratisd/pull/2298
  https://github.com/stratis-storage/stratisd/pull/2297
  https://github.com/stratis-storage/stratisd/pull/2296
  https://github.com/stratis-storage/stratisd/pull/2295
  https://github.com/stratis-storage/stratisd/pull/2293
  https://github.com/stratis-storage/stratisd/pull/2292
  https://github.com/stratis-storage/stratisd/pull/2287
  https://github.com/stratis-storage/stratisd/pull/2284
  https://github.com/stratis-storage/stratisd/pull/2283
  https://github.com/stratis-storage/stratisd/pull/2280
  https://github.com/stratis-storage/stratisd/pull/2279
  https://github.com/stratis-storage/stratisd/pull/2267
  https://github.com/stratis-storage/stratisd/pull/2262
  https://github.com/stratis-storage/stratisd/pull/2259
  https://github.com/stratis-storage/stratisd/pull/2258
  https://github.com/stratis-storage/stratisd/pull/2249


stratisd 2.2.0
==============
Recommended Rust toolchain version: 1.46.0
Lowest supported Rust toolchain version: 1.45

New D-Bus interfaces:
org.storage.stratis2.FetchProperties.r2
org.storage.stratis2.Manager.r2
org.storage.stratis2.blockdev.r2

New minimum Rust crate requirement:
  - proptest: 0.10.0

Recommended Python interpreter: 3.7.7
Lowest supported Python interpreter: 3.6.8
Python linter: pylint (2.4.4)
Python auto-formatter: black (19.10b0)
Python import sorter: isort (4.3.21)

YAML linter: yamllint (1.23.0)


- Set filesystem symlinks in /dev/stratis instead of /stratis,
  include script to migrate symlinks:
  https://github.com/stratis-storage/stratisd/issues/704
  https://github.com/stratis-storage/stratisd/issues/2162
  https://github.com/stratis-storage/stratisd/issues/2175
  https://github.com/stratis-storage/stratisd/issues/2198
  https://github.com/stratis-storage/stratisd/issues/2220
  https://github.com/stratis-storage/stratisd/pull/2238
  https://github.com/stratis-storage/stratisd/pull/2235
  https://github.com/stratis-storage/stratisd/pull/2199
  https://github.com/stratis-storage/stratisd/pull/2197
  https://github.com/stratis-storage/stratisd/pull/2192
  https://github.com/stratis-storage/stratisd/pull/2190
  https://github.com/stratis-storage/stratisd/pull/2186
  https://github.com/stratis-storage/stratisd/pull/2177
  https://github.com/stratis-storage/stratisd/pull/2166
  https://github.com/stratis-storage/stratisd/pull/2153
  https://github.com/stratis-storage/stratisd/pull/2147

- Put terminal settings functionality for key management in stratisd D-bus
  layer:
  https://github.com/stratis-storage/stratisd/pull/2214

- Add PhysicalPath D-Bus property for blockdev interface:
  https://github.com/stratis-storage/stratisd/issues/2191
  https://github.com/stratis-storage/stratisd/pull/2209

- Add new FetchProperties interface to Manager to support LockedPools property:
  https://github.com/stratis-storage/stratisd/issues/2179
  https://github.com/stratis-storage/stratisd/pull/2246
  https://github.com/stratis-storage/stratisd/pull/2231
  https://github.com/stratis-storage/stratisd/pull/2228
  https://github.com/stratis-storage/stratisd/pull/2185

- Remove --debug option, add --log-level option with different semantics:
  https://github.com/stratis-storage/stratisd/pull/2095

- Fix a bug where filesystem Name property changed signal was being emitted for
  only one of the appropriate interfaces:
  https://github.com/stratis-storage/stratisd/issues/2215
  https://github.com/stratis-storage/stratisd/pull/2221

- Export InterfacesAdded and InterfacesRemoved signals on the D-Bus:
  https://github.com/stratis-storage/stratisd/issues/1377
  https://github.com/stratis-storage/stratisd/pull/2170

- No longer catch SIGUSR1 signal:
  https://github.com/stratis-storage/stratisd/pull/2161

- Fix a bug where, under certain conditions, idempotency might be violated
  when creating a new pool:
  https://github.com/stratis-storage/stratisd/issues/2150
  https://github.com/stratis-storage/stratisd/pull/2151

- Fix a bug where some region of a device was not being zeroed properly,
  before creation of the meta device of a cache or thin pool, which can
  cause creation of the device to fail:
  https://github.com/stratis-storage/stratisd/pull/2206

- Introduce the stratis-min CLI as an unsupported application:
  https://github.com/stratis-storage/stratisd/pull/2239

- Add unsupported script to read the Stratis metadata on a device:
  https://github.com/stratis-storage/stratisd/issues/2157
  https://github.com/stratis-storage/stratisd/issues/2097
  https://github.com/stratis-storage/stratisd/pull/2159
  https://github.com/stratis-storage/stratisd/pull/2137
  https://github.com/stratis-storage/stratisd/pull/2135
  https://github.com/stratis-storage/stratisd/pull/2132

- Return a more precise error message if a device unlocking action fails
  because a key is not present:
  https://github.com/stratis-storage/stratisd/issues/2114
  https://github.com/stratis-storage/stratisd/pull/2126

- Extend engine state report to include information about blockdevs:
  https://github.com/stratis-storage/stratisd/issues/2125
  https://github.com/stratis-storage/stratisd/pull/2129

- Logging improvements:
  https://github.com/stratis-storage/stratisd/pull/2112
  https://github.com/stratis-storage/stratisd/pull/2088

- Make sim engine signals for D-Bus properties consistent with real engine:
  https://github.com/stratis-storage/stratisd/pull/2138

- Enable pedantic numeric lints:
  https://github.com/stratis-storage/stratisd/pull/2142
  https://github.com/stratis-storage/stratisd/pull/2140

- Deny all pedantic lints that the code base currently does not infringe:
  https://github.com/stratis-storage/stratisd/pull/2201

- Hoist metadata module up a level:
  https://github.com/stratis-storage/stratisd/pull/2210

- Improvements to implementation of thinpool abstraction:
  https://github.com/stratis-storage/stratisd/pull/2113
  https://github.com/stratis-storage/stratisd/pull/2107
  https://github.com/stratis-storage/stratisd/pull/2103

- Remove some dead code in filesystem abstraction:
  https://github.com/stratis-storage/stratisd/issues/512
  https://github.com/stratis-storage/stratisd/pull/2171

- Refactor liminal module into distinct submodules, fix a minor bug:
  https://github.com/stratis-storage/stratisd/pull/2242
  https://github.com/stratis-storage/stratisd/pull/2187

- Add a script for examining versions of dependencies:
  https://github.com/stratis-storage/stratisd/pull/2196

- Increase version to 2.2.0:
  https://github.com/stratis-storage/stratisd/pull/2089

- Tidies and Maintenance:
  https://github.com/stratis-storage/stratisd/pull/2245
  https://github.com/stratis-storage/stratisd/pull/2243
  https://github.com/stratis-storage/stratisd/pull/2234
  https://github.com/stratis-storage/stratisd/pull/2232
  https://github.com/stratis-storage/stratisd/pull/2230
  https://github.com/stratis-storage/stratisd/pull/2227
  https://github.com/stratis-storage/stratisd/pull/2226
  https://github.com/stratis-storage/stratisd/pull/2224
  https://github.com/stratis-storage/stratisd/pull/2222
  https://github.com/stratis-storage/stratisd/pull/2212
  https://github.com/stratis-storage/stratisd/pull/2208
  https://github.com/stratis-storage/stratisd/pull/2207
  https://github.com/stratis-storage/stratisd/pull/2205
  https://github.com/stratis-storage/stratisd/pull/2202
  https://github.com/stratis-storage/stratisd/pull/2195
  https://github.com/stratis-storage/stratisd/pull/2193
  https://github.com/stratis-storage/stratisd/pull/2189
  https://github.com/stratis-storage/stratisd/pull/2183
  https://github.com/stratis-storage/stratisd/pull/2176
  https://github.com/stratis-storage/stratisd/pull/2173
  https://github.com/stratis-storage/stratisd/pull/2168
  https://github.com/stratis-storage/stratisd/pull/2167
  https://github.com/stratis-storage/stratisd/pull/2165
  https://github.com/stratis-storage/stratisd/pull/2164
  https://github.com/stratis-storage/stratisd/pull/2149
  https://github.com/stratis-storage/stratisd/pull/2145
  https://github.com/stratis-storage/stratisd/pull/2143
  https://github.com/stratis-storage/stratisd/pull/2141
  https://github.com/stratis-storage/stratisd/pull/2131
  https://github.com/stratis-storage/stratisd/pull/2128
  https://github.com/stratis-storage/stratisd/pull/2124
  https://github.com/stratis-storage/stratisd/pull/2119
  https://github.com/stratis-storage/stratisd/pull/2118
  https://github.com/stratis-storage/stratisd/pull/2115
  https://github.com/stratis-storage/stratisd/pull/2110
  https://github.com/stratis-storage/stratisd/pull/2109
  https://github.com/stratis-storage/stratisd/pull/2105
  https://github.com/stratis-storage/stratisd/pull/2102
  https://github.com/stratis-storage/stratisd/pull/2099
  https://github.com/stratis-storage/stratisd/pull/2096
  https://github.com/stratis-storage/stratisd/pull/2094
  https://github.com/stratis-storage/stratisd/pull/2093
  https://github.com/stratis-storage/stratisd/pull/2092
  https://github.com/stratis-storage/stratisd/pull/2084
  https://github.com/stratis-storage/stratisd/pull/2083
  https://github.com/stratis-storage/stratisd/pull/2082
  https://github.com/stratis-storage/stratisd/pull/2079
  https://github.com/stratis-storage/stratisd/pull/2077


stratisd 2.1.0
==============
Recommended Rust toolchain version: 1.43
Lowest supported Rust toolchain version: 1.43

Recommended Python interpreter: 3.7.6
Lowest supported Python interpreter: 3.6.8
Python linter: pylint (2.3.1)
Python auto-formatter: black (19.3b0)
Python import sorter: isort (4.3.4)

New minimum dependency requirement:
  - cryptsetup: 2.3
  - libblkid: 2.32

New minimum Rust crate requirement:
  - dbus: 0.8
  - libc: 0.2.68
  - libcryptsetup-rs: 0.4.0
  - proptest: 0.9.6

New minimum Python package requirement (for testing):
  - pyudev: 0.22


- Support encryption:
  https://github.com/stratis-storage/stratisd/issues/1822
  https://github.com/stratis-storage/stratisd/issues/1920
  https://github.com/stratis-storage/stratisd/issues/1921
  https://github.com/stratis-storage/stratisd/issues/1935
  https://github.com/stratis-storage/stratisd/issues/1961
  https://github.com/stratis-storage/stratisd/issues/1964
  https://github.com/stratis-storage/stratisd/issues/1973
  https://github.com/stratis-storage/stratisd/issues/1992
  https://github.com/stratis-storage/stratisd/issues/1995
  https://github.com/stratis-storage/stratisd/issues/2000
  https://github.com/stratis-storage/stratisd/issues/2007
  https://github.com/stratis-storage/stratisd/pull/2071
  https://github.com/stratis-storage/stratisd/pull/2066
  https://github.com/stratis-storage/stratisd/pull/2059
  https://github.com/stratis-storage/stratisd/pull/2056
  https://github.com/stratis-storage/stratisd/pull/2054
  https://github.com/stratis-storage/stratisd/pull/2053
  https://github.com/stratis-storage/stratisd/pull/2049
  https://github.com/stratis-storage/stratisd/pull/2044
  https://github.com/stratis-storage/stratisd/pull/2043
  https://github.com/stratis-storage/stratisd/pull/2042
  https://github.com/stratis-storage/stratisd/pull/2036
  https://github.com/stratis-storage/stratisd/pull/2029
  https://github.com/stratis-storage/stratisd/pull/2027
  https://github.com/stratis-storage/stratisd/pull/2022
  https://github.com/stratis-storage/stratisd/pull/2019
  https://github.com/stratis-storage/stratisd/pull/2016
  https://github.com/stratis-storage/stratisd/pull/2009
  https://github.com/stratis-storage/stratisd/pull/2008
  https://github.com/stratis-storage/stratisd/pull/2006
  https://github.com/stratis-storage/stratisd/pull/2001
  https://github.com/stratis-storage/stratisd/pull/1994
  https://github.com/stratis-storage/stratisd/pull/1993
  https://github.com/stratis-storage/stratisd/pull/1990
  https://github.com/stratis-storage/stratisd/pull/1974
  https://github.com/stratis-storage/stratisd/pull/1971
  https://github.com/stratis-storage/stratisd/pull/1966
  https://github.com/stratis-storage/stratisd/pull/1959
  https://github.com/stratis-storage/stratisd/pull/1950
  https://github.com/stratis-storage/stratisd/pull/1949
  https://github.com/stratis-storage/stratisd/pull/1947
  https://github.com/stratis-storage/stratisd/pull/1946
  https://github.com/stratis-storage/stratisd/pull/1943
  https://github.com/stratis-storage/stratisd/pull/1942
  https://github.com/stratis-storage/stratisd/pull/1937
  https://github.com/stratis-storage/stratisd/pull/1936
  https://github.com/stratis-storage/stratisd/pull/1933
  https://github.com/stratis-storage/stratisd/pull/1931
  https://github.com/stratis-storage/stratisd/pull/1930
  https://github.com/stratis-storage/stratisd/pull/1924
  https://github.com/stratis-storage/stratisd/pull/1922
  https://github.com/stratis-storage/stratisd/pull/1910
  https://github.com/stratis-storage/stratisd/pull/1841

- Require libcryptsetup bindings:
  https://github.com/stratis-storage/stratisd/pull/1846
  https://github.com/stratis-storage/stratisd/pull/1843
  https://github.com/stratis-storage/stratisd/pull/1815

- Initialize r1 of the FetchProperties D-Bus interface;
  expose a HasCache property:
  https://github.com/stratis-storage/stratisd/pull/1976
  https://github.com/stratis-storage/stratisd/pull/1925
  https://github.com/stratis-storage/stratisd/pull/1808

- Initialize r1 of the pool D-Bus interface;
  expose an Encrypted property:
  https://github.com/stratis-storage/stratisd/pull/1851
  https://github.com/stratis-storage/stratisd/pull/1825
  https://github.com/stratis-storage/stratisd/pull/1821

- Add a new unstable Report interface for JSON formatted reports:
  https://github.com/stratis-storage/stratisd/issues/1122
  https://github.com/stratis-storage/stratisd/pull/2041
  https://github.com/stratis-storage/stratisd/pull/2033
  https://github.com/stratis-storage/stratisd/pull/2028
  https://github.com/stratis-storage/stratisd/pull/1980

- Require at least one blockdev for initialization actions:
  https://github.com/stratis-storage/stratisd/pull/1828

- Do not dump debug representation of engine state to logs:
  https://github.com/stratis-storage/stratisd/pull/1907

- Enforce non-Rust version requirements with a build script:
  https://github.com/stratis-storage/stratisd/issues/1913
  https://github.com/stratis-storage/stratisd/pull/1919

- Further rewrite device identification and initialization:
  https://github.com/stratis-storage/stratisd/issues/1652
  https://github.com/stratis-storage/stratisd/issues/1656
  https://github.com/stratis-storage/stratisd/pull/2013
  https://github.com/stratis-storage/stratisd/pull/2010
  https://github.com/stratis-storage/stratisd/pull/1986
  https://github.com/stratis-storage/stratisd/pull/1978
  https://github.com/stratis-storage/stratisd/pull/1960
  https://github.com/stratis-storage/stratisd/pull/1957
  https://github.com/stratis-storage/stratisd/pull/1929
  https://github.com/stratis-storage/stratisd/pull/1886
  https://github.com/stratis-storage/stratisd/pull/1876
  https://github.com/stratis-storage/stratisd/pull/1868
  https://github.com/stratis-storage/stratisd/pull/1865
  https://github.com/stratis-storage/stratisd/pull/1860
  https://github.com/stratis-storage/stratisd/pull/1850
  https://github.com/stratis-storage/stratisd/pull/1842
  https://github.com/stratis-storage/stratisd/pull/1833
  https://github.com/stratis-storage/stratisd/pull/1809

- Rewrite Python-based tests of device discovery;
  display stratisd logs in test output:
  https://github.com/stratis-storage/stratisd/issues/2057
  https://github.com/stratis-storage/stratisd/pull/2063
  https://github.com/stratis-storage/stratisd/pull/2061
  https://github.com/stratis-storage/stratisd/pull/2058
  https://github.com/stratis-storage/stratisd/pull/2045
  https://github.com/stratis-storage/stratisd/pull/2030
  https://github.com/stratis-storage/stratisd/pull/2004
  https://github.com/stratis-storage/stratisd/pull/2003
  https://github.com/stratis-storage/stratisd/pull/1991
  https://github.com/stratis-storage/stratisd/pull/1953
  https://github.com/stratis-storage/stratisd/pull/1952
  https://github.com/stratis-storage/stratisd/pull/1909
  https://github.com/stratis-storage/stratisd/pull/1899
  https://github.com/stratis-storage/stratisd/pull/1893
  https://github.com/stratis-storage/stratisd/pull/1891
  https://github.com/stratis-storage/stratisd/pull/1889
  https://github.com/stratis-storage/stratisd/pull/1887

- Enforce pylint defaults on all Python source:
  https://github.com/stratis-storage/stratisd/issues/1892
  https://github.com/stratis-storage/stratisd/pull/1928
  https://github.com/stratis-storage/stratisd/pull/1917

- Tidies and Maintenance:
  https://github.com/stratis-storage/stratisd/pull/2074
  https://github.com/stratis-storage/stratisd/pull/2072
  https://github.com/stratis-storage/stratisd/pull/2070
  https://github.com/stratis-storage/stratisd/pull/2068
  https://github.com/stratis-storage/stratisd/pull/2067
  https://github.com/stratis-storage/stratisd/pull/2065
  https://github.com/stratis-storage/stratisd/pull/2047
  https://github.com/stratis-storage/stratisd/pull/2040
  https://github.com/stratis-storage/stratisd/pull/2039
  https://github.com/stratis-storage/stratisd/pull/2025
  https://github.com/stratis-storage/stratisd/pull/2023
  https://github.com/stratis-storage/stratisd/pull/2018
  https://github.com/stratis-storage/stratisd/pull/2014
  https://github.com/stratis-storage/stratisd/pull/1999
  https://github.com/stratis-storage/stratisd/pull/1996
  https://github.com/stratis-storage/stratisd/pull/1985
  https://github.com/stratis-storage/stratisd/pull/1984
  https://github.com/stratis-storage/stratisd/pull/1982
  https://github.com/stratis-storage/stratisd/pull/1972
  https://github.com/stratis-storage/stratisd/pull/1965
  https://github.com/stratis-storage/stratisd/pull/1963
  https://github.com/stratis-storage/stratisd/pull/1956
  https://github.com/stratis-storage/stratisd/pull/1945
  https://github.com/stratis-storage/stratisd/pull/1938
  https://github.com/stratis-storage/stratisd/pull/1923
  https://github.com/stratis-storage/stratisd/pull/1903
  https://github.com/stratis-storage/stratisd/pull/1897
  https://github.com/stratis-storage/stratisd/pull/1894
  https://github.com/stratis-storage/stratisd/pull/1890
  https://github.com/stratis-storage/stratisd/pull/1885
  https://github.com/stratis-storage/stratisd/pull/1882
  https://github.com/stratis-storage/stratisd/pull/1881
  https://github.com/stratis-storage/stratisd/pull/1879
  https://github.com/stratis-storage/stratisd/pull/1873
  https://github.com/stratis-storage/stratisd/pull/1872
  https://github.com/stratis-storage/stratisd/pull/1871
  https://github.com/stratis-storage/stratisd/pull/1866
  https://github.com/stratis-storage/stratisd/pull/1864
  https://github.com/stratis-storage/stratisd/pull/1859
  https://github.com/stratis-storage/stratisd/pull/1858
  https://github.com/stratis-storage/stratisd/pull/1856
  https://github.com/stratis-storage/stratisd/pull/1854
  https://github.com/stratis-storage/stratisd/pull/1848
  https://github.com/stratis-storage/stratisd/pull/1838
  https://github.com/stratis-storage/stratisd/pull/1837
  https://github.com/stratis-storage/stratisd/pull/1836
  https://github.com/stratis-storage/stratisd/pull/1831
  https://github.com/stratis-storage/stratisd/pull/1829
  https://github.com/stratis-storage/stratisd/pull/1826
  https://github.com/stratis-storage/stratisd/pull/1820
  https://github.com/stratis-storage/stratisd/pull/1819
  https://github.com/stratis-storage/stratisd/pull/1816
  https://github.com/stratis-storage/stratisd/pull/1811


stratisd 2.0.1
==============
Recommended Rust toolchain version: 1.40
Lowest supported Rust toolchain version: 1.39
Python import sorter: isort (4.3.4)
Python auto-formatter: black (19.3b0)

- Avoid returning from function while pool is suspended:
  https://github.com/stratis-storage/stratisd/issues/1730
  https://github.com/stratis-storage/stratisd/pull/1734

- Refine description of stratisd.service in systemd configuration:
  https://github.com/stratis-storage/stratisd/issues/1647
  https://github.com/stratis-storage/stratisd/pull/1738

- Fix a few places where the index of an incorrect D-Bus argument would be
  misidentified in a D-Bus error message:
  https://github.com/stratis-storage/stratisd/pull/1756

- Add changelog matter from two previous releases to CHANGES.txt:
  https://github.com/stratis-storage/stratisd/pull/1793

- Add some additional logging for significant events:
  https://github.com/stratis-storage/stratisd/pull/1797

- Restructure dbus_api module to better support multiple versioned
  interfaces:
  https://github.com/stratis-storage/stratisd/pull/1804
  https://github.com/stratis-storage/stratisd/pull/1776
  https://github.com/stratis-storage/stratisd/pull/1770

- Refactor device discovery mechanism:
  https://github.com/stratis-storage/stratisd/pull/1779
  https://github.com/stratis-storage/stratisd/pull/1767
  https://github.com/stratis-storage/stratisd/pull/1765
  https://github.com/stratis-storage/stratisd/pull/1759
  https://github.com/stratis-storage/stratisd/pull/1750
  https://github.com/stratis-storage/stratisd/pull/1739
  https://github.com/stratis-storage/stratisd/pull/1736
  https://github.com/stratis-storage/stratisd/pull/1725
  https://github.com/stratis-storage/stratisd/pull/1723

- Refactor idempotency implementation so that it is handled as close to
  entry points to the engine as possible:
  https://github.com/stratis-storage/stratisd/pull/1743

- Refactor metadata handling for better encapsulation:
  https://github.com/stratis-storage/stratisd/pull/1792

- Fully qualify all non-prelude data types in macros:
  https://github.com/stratis-storage/stratisd/issues/1748
  https://github.com/stratis-storage/stratisd/pull/1758

- Tidies and Maintenance:
  https://github.com/stratis-storage/stratisd/pull/1803
  https://github.com/stratis-storage/stratisd/pull/1796
  https://github.com/stratis-storage/stratisd/pull/1791
  https://github.com/stratis-storage/stratisd/pull/1786
  https://github.com/stratis-storage/stratisd/pull/1785
  https://github.com/stratis-storage/stratisd/pull/1777
  https://github.com/stratis-storage/stratisd/pull/1774
  https://github.com/stratis-storage/stratisd/pull/1772
  https://github.com/stratis-storage/stratisd/pull/1763
  https://github.com/stratis-storage/stratisd/pull/1762
  https://github.com/stratis-storage/stratisd/pull/1758
  https://github.com/stratis-storage/stratisd/pull/1745
  https://github.com/stratis-storage/stratisd/pull/1728
  https://github.com/stratis-storage/stratisd/pull/1726
  https://github.com/stratis-storage/stratisd/pull/1724
  https://github.com/stratis-storage/stratisd/pull/1721
  https://github.com/stratis-storage/stratisd/pull/1715
  https://github.com/stratis-storage/stratisd/pull/1714
  https://github.com/stratis-storage/stratisd/pull/1713
  https://github.com/stratis-storage/stratisd/pull/1712
  https://github.com/stratis-storage/stratisd/pull/1709
  https://github.com/stratis-storage/stratisd/pull/1707
  https://github.com/stratis-storage/stratisd/pull/1704
  https://github.com/stratis-storage/stratisd/pull/1701


stratisd 2.0.0
==============
Recommended Rust toolchain version: 1.38
Lowest supported Rust toolchain version: 1.37
Python auto-formatter: black (18.9b0)

New minimum Rust crate requirements:
  - itertools: 0.8.0
  - proptest: 0.9.0

- Update version of D-Bus service name and interface names:
  https://github.com/stratis-storage/project/issues/103
  https://github.com/stratis-storage/stratisd/pull/1682

- Restrict D-Bus properties to a core set of fundamental properties;
  fetch other properties using a D-Bus method:
  https://github.com/stratis-storage/project/issues/52
  https://github.com/stratis-storage/stratisd/pull/1679
  https://github.com/stratis-storage/stratisd/issues/1688
  https://github.com/stratis-storage/stratisd/pull/1692
  https://github.com/stratis-storage/stratisd/pull/1697

- Make D-Bus API and engine operations idempotent:
  https://github.com/stratis-storage/project/issues/51
  https://github.com/stratis-storage/stratisd/pull/1651
  https://github.com/stratis-storage/stratisd/issues/1686
  https://github.com/stratis-storage/stratisd/pull/1695

- Return all size values in bytes:
  https://github.com/stratis-storage/stratisd/issues/1243
  https://github.com/stratis-storage/stratisd/pull/1680

- Use tuple for D-Bus types that are optional:
  https://github.com/stratis-storage/project/issues/37
  https://github.com/stratis-storage/stratisd/pull/1696

- Tidies and Maintenance:
  https://github.com/stratis-storage/stratisd/pull/1685
  https://github.com/stratis-storage/stratisd/pull/1673
  https://github.com/stratis-storage/stratisd/pull/1671
  https://github.com/stratis-storage/stratisd/pull/1669
  https://github.com/stratis-storage/stratisd/pull/1668
  https://github.com/stratis-storage/stratisd/pull/1666
  https://github.com/stratis-storage/stratisd/pull/1665
  https://github.com/stratis-storage/stratisd/pull/1664
  https://github.com/stratis-storage/stratisd/pull/1663
  https://github.com/stratis-storage/stratisd/pull/1661
  https://github.com/stratis-storage/stratisd/pull/1658
  https://github.com/stratis-storage/stratisd/pull/1657
  https://github.com/stratis-storage/stratisd/pull/1655
  https://github.com/stratis-storage/stratisd/pull/1629
  https://github.com/stratis-storage/stratisd/pull/1626
  https://github.com/stratis-storage/stratisd/pull/1514


stratisd 1.0.6
==============
Recommended Rust toolchain version: 1.37
Lowest supported Rust toolchain version: 1.36
Python auto-formatter: black (18.9b0)

New minimum Rust crate requirements:
  - error_chain: 0.12.1
  - lazy_static: 1.4.0

- Fix a bug in writing metadata after setup when current time is set back:
  https://github.com/stratis-storage/stratisd/issues/1509
  https://github.com/stratis-storage/stratisd/pull/1595

- Specify PID file with /run/stratisd.pid instead of /var/run/stratisd.pid:
  https://github.com/stratis-storage/stratisd/issues/1630
  https://github.com/stratis-storage/stratisd/pull/1632

- Change a message level from info to debug and improve the message text:
  https://github.com/stratis-storage/stratisd/issues/1485
  https://github.com/stratis-storage/stratisd/pull/1558

- Metadata refactoring to improve encapsulation and clarity and to use
  types to distinguish among the sizes of different metadata regions:
  https://github.com/stratis-storage/stratisd/issues/1573
  https://github.com/stratis-storage/stratisd/pull/1569
  https://github.com/stratis-storage/stratisd/pull/1571
  https://github.com/stratis-storage/stratisd/pull/1570
  https://github.com/stratis-storage/stratisd/pull/1574
  https://github.com/stratis-storage/stratisd/pull/1572
  https://github.com/stratis-storage/stratisd/pull/1576
  https://github.com/stratis-storage/stratisd/pull/1581
  https://github.com/stratis-storage/stratisd/pull/1585
  https://github.com/stratis-storage/stratisd/pull/1589
  https://github.com/stratis-storage/stratisd/pull/1599
  https://github.com/stratis-storage/stratisd/pull/1606
  https://github.com/stratis-storage/stratisd/pull/1608

- Use types to distinguish among sizes:
  https://github.com/stratis-storage/stratisd/pull/1591

- Tidies and Maintenance:
  https://github.com/stratis-storage/stratisd/pull/1643
  https://github.com/stratis-storage/stratisd/pull/1636
  https://github.com/stratis-storage/stratisd/pull/1639
  https://github.com/stratis-storage/stratisd/pull/1641
  https://github.com/stratis-storage/stratisd/pull/1633
  https://github.com/stratis-storage/stratisd/pull/1635
  https://github.com/stratis-storage/stratisd/pull/1621
  https://github.com/stratis-storage/stratisd/pull/1625
  https://github.com/stratis-storage/stratisd/pull/1624
  https://github.com/stratis-storage/stratisd/pull/1623
  https://github.com/stratis-storage/stratisd/pull/1622
  https://github.com/stratis-storage/stratisd/pull/1618
  https://github.com/stratis-storage/stratisd/pull/1617
  https://github.com/stratis-storage/stratisd/pull/1615
  https://github.com/stratis-storage/stratisd/pull/1613
  https://github.com/stratis-storage/stratisd/pull/1610
  https://github.com/stratis-storage/stratisd/pull/1609
  https://github.com/stratis-storage/stratisd/pull/1605
  https://github.com/stratis-storage/stratisd/pull/1604
  https://github.com/stratis-storage/stratisd/pull/1603
  https://github.com/stratis-storage/stratisd/pull/1600
  https://github.com/stratis-storage/stratisd/pull/1598
  https://github.com/stratis-storage/stratisd/pull/1593
  https://github.com/stratis-storage/stratisd/pull/1588
  https://github.com/stratis-storage/stratisd/pull/1587
  https://github.com/stratis-storage/stratisd/pull/1580
  https://github.com/stratis-storage/stratisd/pull/1577
  https://github.com/stratis-storage/stratisd/pull/1566
  https://github.com/stratis-storage/stratisd/pull/1565
  https://github.com/stratis-storage/stratisd/pull/1563


stratisd 1.0.5
==============
Recommended Rust toolchain version: 1.33
Lowest supported Rust toolchain version: 1.31
Python auto-formatter: yapf (0.21.0)

New minimum Rust crate requirements:
  - devicemapper: 0.28
  - libmount: 0.1.13
  - nix: 0.14

- Fix an error in the calculation of the maximum size of variable length
  metadata that a single block device can store:
  https://github.com/stratis-storage/stratisd/pull/1524

- Make a note of some code defects that would cause a bug if variable
  length metadata were very large, as might occur if a pool contained very
  many devices:
  https://github.com/stratis-storage/stratisd/pull/1521

- Clarify the error message that stratisd displays if an external application
  that it depends on is missing:
  https://github.com/stratis-storage/stratisd/pull/1547

- Use nested imports in all Rust source:
  https://github.com/stratis-storage/stratisd/pull/1517

- Metadata refactoring to improve encapsulation and clarity and to use
  types to distinguish among the sizes of different metadata regions:
  https://github.com/stratis-storage/stratisd/pull/1554
  https://github.com/stratis-storage/stratisd/pull/1549
  https://github.com/stratis-storage/stratisd/pull/1546
  https://github.com/stratis-storage/stratisd/pull/1545
  https://github.com/stratis-storage/stratisd/pull/1541
  https://github.com/stratis-storage/stratisd/pull/1534
  https://github.com/stratis-storage/stratisd/pull/1522
  https://github.com/stratis-storage/stratisd/pull/1516

- Tidies and Maintenance:
  https://github.com/stratis-storage/stratisd/pull/1560
  https://github.com/stratis-storage/stratisd/pull/1555
  https://github.com/stratis-storage/stratisd/pull/1553
  https://github.com/stratis-storage/stratisd/pull/1552
  https://github.com/stratis-storage/stratisd/pull/1550
  https://github.com/stratis-storage/stratisd/pull/1537
  https://github.com/stratis-storage/stratisd/pull/1536
  https://github.com/stratis-storage/stratisd/pull/1535
  https://github.com/stratis-storage/stratisd/pull/1532
  https://github.com/stratis-storage/stratisd/pull/1530
  https://github.com/stratis-storage/stratisd/pull/1528
  https://github.com/stratis-storage/stratisd/pull/1525
  https://github.com/stratis-storage/stratisd/pull/1515
  https://github.com/stratis-storage/stratisd/pull/1508
  https://github.com/stratis-storage/stratisd/pull/1507


stratisd 1.0.4
==============
Recommended Rust toolchain version: 1.33
Lowest supported Rust toolchain version: 1.31
Python auto-formatter: yapf (0.21.0)

New minimum Rust crate requirements:
  - devicemapper: 0.27.0
  - libc: 0.2.47
  - nix: 0.13

- Fix a bug where stratisd was not writing to Stratis filesystem metadata
  properly:
  https://github.com/stratis-storage/stratisd/pull/1480

- Require new version of devicemapper that contains fixes to devicemapper
  status parsing code, and handle the newly available values appropriately:
  https://github.com/stratis-storage/stratisd/pull/1461

- Set RUST_BACKTRACE to 1 in the systemd service file in order to ensure that
  a stack trace is generated if stratisd panics:
  https://github.com/stratis-storage/stratisd/pull/1479

- Use edition 2018:
  https://github.com/stratis-storage/stratisd/pull/1501

- Do not combine the errors that might result from reading one or the other
  of the Stratis static headers from a device:
  https://github.com/stratis-storage/stratisd/pull/1439

- Tidies and Maintenance:
  https://github.com/stratis-storage/stratisd/pull/1510
  https://github.com/stratis-storage/stratisd/pull/1505
  https://github.com/stratis-storage/stratisd/pull/1504
  https://github.com/stratis-storage/stratisd/pull/1503
  https://github.com/stratis-storage/stratisd/pull/1500
  https://github.com/stratis-storage/stratisd/pull/1498
  https://github.com/stratis-storage/stratisd/pull/1497
  https://github.com/stratis-storage/stratisd/pull/1493
  https://github.com/stratis-storage/stratisd/pull/1492
  https://github.com/stratis-storage/stratisd/pull/1488
  https://github.com/stratis-storage/stratisd/pull/1484
  https://github.com/stratis-storage/stratisd/pull/1477
  https://github.com/stratis-storage/stratisd/pull/1469
  https://github.com/stratis-storage/stratisd/pull/1459
  https://github.com/stratis-storage/stratisd/pull/1452
  https://github.com/stratis-storage/stratisd/pull/1451
  https://github.com/stratis-storage/stratisd/pull/1450
  https://github.com/stratis-storage/stratisd/pull/1442
  https://github.com/stratis-storage/stratisd/pull/1441
  https://github.com/stratis-storage/stratisd/pull/1436
  https://github.com/stratis-storage/stratisd/pull/1435
  https://github.com/stratis-storage/stratisd/pull/1434
  https://github.com/stratis-storage/stratisd/pull/1432
  https://github.com/stratis-storage/stratisd/pull/1431
  https://github.com/stratis-storage/stratisd/pull/1427
  https://github.com/stratis-storage/stratisd/pull/1425
  https://github.com/stratis-storage/stratisd/pull/1423
  https://github.com/stratis-storage/stratisd/pull/1420
  https://github.com/stratis-storage/stratisd/pull/1418
  https://github.com/stratis-storage/stratisd/pull/1416
  https://github.com/stratis-storage/stratisd/pull/1415
  https://github.com/stratis-storage/stratisd/pull/1414
  https://github.com/stratis-storage/stratisd/pull/1413
  https://github.com/stratis-storage/stratisd/pull/1412
  https://github.com/stratis-storage/stratisd/pull/1411
  https://github.com/stratis-storage/stratisd/pull/1409
  https://github.com/stratis-storage/stratisd/pull/1407
  https://github.com/stratis-storage/stratisd/pull/1406
  https://github.com/stratis-storage/stratisd/pull/1405
  https://github.com/stratis-storage/stratisd/pull/1404
  https://github.com/stratis-storage/stratisd/pull/1403
  https://github.com/stratis-storage/stratisd/pull/1391
  https://github.com/stratis-storage/stratisd/pull/1345
