Breaking
- Nothing is stored in your project directory any more. A project's hosts and mappings live in
~/.config/drift/projects/<slug>.toml(mode600), named after its registry slug. Configuration from every older layout —.drift/config.toml,secrets.toml,access.toml— is migrated on startup and removed,.drift/included when nothing but drift's own.gitignoreis left in it. If that config was ever committed, the password in it is still in your repository's history: rotate it. - The registry decides which project a directory belongs to, the registered project whose path is the directory or a parent of it. There is no marker file to walk up for, so registering a project is what gives a directory hosts of its own — drift offers it when you start in a repository it does not know. After migrating, an older drift will not find the project at all.
- Mappings no longer travel with a clone. That is the point of the change and the cost of it: every developer enters them once per machine.
0.1.6-alpha was prepared but never released, and 0.1.7-alpha reverses the part of it users would have seen. It is marked as such in the changelog.
What's Changed
- Store project host credentials outside the project by @nibra180 in #27
- Prepare v0.1.6-alpha by @nibra180 in #28
- Split project host config into environment and access by @nibra180 in #30
- docs: plan the config split by ownership by @nibra180 in #29
- Show which config layer a host field is stored in by @nibra180 in #31
- Fold a 0.1.6-alpha secrets.toml even with a clean project config by @nibra180 in #32
- docs: plan moving the whole config into ~/.config/drift by @nibra180 in #33
- Keep a project's whole config in ~/.config/drift by @nibra180 in #34
- Offer to register the repository drift was started in by @nibra180 in #35
- Prepare v0.1.7-alpha by @nibra180 in #36
- docs: mark 0.1.6-alpha as never released by @nibra180 in #37
Full Changelog: v0.1.5-alpha...v0.1.7-alpha
See CHANGELOG.md for the full 0.1.7-alpha notes.