Draft documentation for release v0.5.0

This commit is contained in:
2026-01-08 18:20:04 -05:00
parent ed19d0a416
commit d54b59030e
2 changed files with 41 additions and 6 deletions
+39 -1
View File
@@ -1,4 +1,42 @@
**libmutton v0.5.0**
Release date TBD
This release adds password age tracking support and improves the robustness of core functionality.
This release adds password age tracking support and features large refactors that improve the robustness of core functionality. Many breaking changes are present. Highlights are listed below.
## Breaking (for users+developers)
- **USERS**: These changes *require* updating your copy of `libmuttonserver`; additionally, you *must* re-generate your config file however your client allows (e.g. `mutn init`)
- (50d51f9d96cca194bc89206fdd56de4db7a696a5) Password age tracking support
- libmutton now tracks when passwords were last updated
- Clients can use this information to warn users when passwords should be changed
- Random (within the last year) age data can be added to existing password entries
- This allows easing into this feature, rather than having all your passwords expire on the same day
- Developers: see the new `age` package
- (e355c810da06d794fd5a6ed10b8a886afa7f3492) (f16078fe01ec8a14fd7f2cd059340b33908ca1d6) (4e6c18db8a6716dcf1a9b73fd523f2f7161ce7f2) (2ab777fd571bb9b79e7601667e5c1f5b15400d03) (941a2dc8b80cb6e0327b33714c4a894962621bda) (35db3bf20b8ab3705bf349fdc7ed4b8e7899cddb) (5e5a7c57e9c5633edb74a968e46f21e141ab81ef) Massive sync refactor
- Sync info is now passed from the server to the client using rigidly defined JSON types
- This greatly improves code maintainability and reduces potential for bugs
- Sync now supports password age tracking data
- (b591e2ef5a6da7f8fbee099c25349dd61433b297) (571bc0a3bd8773771c01191d9b7b8f03c7c5b436) New config file format
- `libmutton.ini` is now `libmuttoncfg.json`
- This format change was made since the JSON package was being adopted for the sync refactor (the `gopkg.in/ini.v1` dependency can now be dropped)
- Developers: see the new `config` package, replacing the old `cfg` package
## Breaking (for developers)
- (bf1399ce8d6e39d04d3cdad2d99ae787c88effdf) (97037903360c70221e138b22630e7ef90ec378bc) (a0f21b31f743eab4cc9d0f879e3b5fc4d7627ad0) (80cf65775ada4ce7c0f1c6c3ab93d5bb561518ad) (8d1dd48035bd3abb6f4b8847c5a39a61be53f3a4) (c63dff409210e438c27a429b9fdb023a7bba66af) (336dc5c158af21214bd097c2a0eadbc44f7c2cf6) (04e1b0dd37d372fb93c168273761a7285f819dc8) (d2a6ed5eaa6600a44912edbebb3b2df0a78320b0) (fdce036be6d42cf8ab97a9fb66f88b243639252f) (6004a94b7718a97bdc847ea99a8a39761c7b0075) Massive clipboard refactor
- Added new `clip` package
- Non-continuous TOTP copy must use `core.GenTOTP` directly
- The typical copy workflow now only supports continuous copy
- Dropped mobile clipboard support
- This can/should be handled by the GUI toolkit
- (28286788a045a090be67b4f2919b09a8be570801) (a18c3ea1d6412dbb88fba5a5f69693450be9e97c) (5e5a7c57e9c5633edb74a968e46f21e141ab81ef) `core.LibmuttonInit` overhaul
- Now supports non-destructive append
- Now supports custom device ID prefixes
## Dependencies (direct/replaced)
- Dropped
- golang.design/x/clipboard
- gopkg.in/ini.v1
- Bumped
- Go: v1.25.4 => v1.25.5
- github.com/rwinkhart/go-boilerplate: v0.1.0 => v0.1.1
- golang.org/x/crypto: v0.45.0 => v0.46.0
- github.com/rwinkhart/sys: v0.38.0 => v0.40.0