# Changelog All notable changes to vpn-switch are documented here. The format is based on [Keep a Changelog](https://keepachangelog.com/), and the project aims to follow [Semantic Versioning](https://semver.org/). ## [Unreleased] — towards 1.0.0 - The credentials file of OpenVPN documented end to end: the pin `VPN_SWITCH_CREDENTIALS_openvpn` in the manual's ENVIRONMENT and EXAMPLES, `@env` on `openvpn start` and `openvpn patch`, and a tutorial (TUTORIAL_OPENVPN.md): the two-line file outside the database, what a session keeps (the path), rotation when the provider reissues the VPN credentials, and that no export carries the file. - `import` into a database that is not there makes it: the dump names its profile (new header line `# Profile:`), its signature is verified against the keyring the dump's own `openpgp add` record names (an absolute gnupghome that exists here, else the user's default keyring), the database is bootstrapped with that profile, the signer pinned under the record name the dump carries, the terminal interpreter pinned to `sh` (an import is asked for), then the import runs as always (`import bootstrap`, internal; `import` joins the commands that run without a database). The patch script `template/rescue/vpn-switch-import-db-patch.sh` (with the template tree under `lib/vpn-switch/template/rescue/`) builds a user's database into a rescue root for elebake's `stage rescue patch`: `sh