Repository navigation
Rename to SecretSpace (3.0.0-alpha.2) - #19
Merged
Merged
Conversation
Owner decision 2026-11-09: another password manager is already called PassMan. Every name a user sees is now SecretSpace: window title, logo text, Settings footer, dialogs, Emergency Kit file, installer, program, Start Menu entry, builder, README. Logo files renamed, the image unchanged. Deliberately NOT renamed, because stored data, installs and the live sync server depend on them: - the key-derivation and fingerprint context strings b"PassMan3 ..." in account_crypto.py, and the DPAPI context in secret_store.py (changing them would lock every existing account out); - PMV2/PMV3/PMK3 file magics and the A3- Secret Key prefix; - the Inno AppId, so an upgrade still finds the installed copy; - the X-PassMan-* sync headers (the 1.x servers read them); - the PASSMAN_DATA_DIR variable and the test copy of the server; - "PassMan 2.x" in the import dialog: that is what those vaults were. Data folder: vault.appdata_home and the installer's DataHome choose %APPDATA%\SecretSpace, unless only %APPDATA%\PassMan exists - then that one. Nothing is moved or renamed, so an upgraded install finds its vaults where they are. Tests: old folder kept (and no empty SecretSpace folder made), new folder wins once it exists, new install uses the new name; a mutant without the fallback fails the first one. Installer: same AppId; InstallDelete removes PassMan.exe and the PassMan Start Menu/desktop shortcuts, so an upgrade leaves no stale entries. The portable-vault move page still says PassMan.exe (2.2-era files). The builder also clears the old PassMan output names. pytest 503 passed, 2 skipped. Test build: SecretSpace-Client-Installer.exe 3.0.0-alpha.2, exe ProductName SecretSpace; the build runs in the lab (Client3) with its existing accounts. Not installed: the installer shares the AppId with the installed prod copy. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011ojnyVg7ccsR3pZ64s7aRH
passman_server.py is again an unchanged copy of the servers' file (SecretSpace-Server-* #8: two display strings). The note names the renamed repositories. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011ojnyVg7ccsR3pZ64s7aRH
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
PassMan → SecretSpace (owner, 2026-11-09: another password manager already uses the name PassMan). Version 3.0.0-alpha.2.
Every name a user sees is now SecretSpace: window title, logo text, Settings footer, dialogs, the Emergency Kit file, the installer (
SecretSpace-Client-Installer.exe), the program (SecretSpace.exe), the Start Menu entry, the builder and the README. The logo image is unchanged (owner: keep it); only its file names changed.Deliberately not renamed
These are what stored data, installs and the live server depend on:
b"PassMan3 …"context strings (account_crypto.py), DPAPI context (secret_store.py)A3-Secret Key prefixAppIdX-PassMan-*sync headersPASSMAN_DATA_DIR, the test copy of the serverUpgrading from PassMan
%APPDATA%\SecretSpace, unless only%APPDATA%\PassManexists; then that one is used. Nothing is moved or renamed. The Python code (vault.appdata_home) and the installer (DataHome) make the same choice.[InstallDelete]removesPassMan.exeand the old PassMan Start Menu/desktop shortcuts, so an upgrade leaves nothing stale. It keeps the install folder it had.Checks
pytest: 503 passed, 2 skipped. 3 new tests:
A mutant without the fallback fails the first test.
Test build OK:
SecretSpace-Client-Installer.exe3.0.0-alpha.2, exe ProductName "SecretSpace". The build runs in the lab (Client3) and keeps its existing accounts.Not installed: the installer shares the AppId with the owner's installed prod copy, so running it would upgrade prod.
After merge: tag v3.0.0-alpha.2 and publish a pre-release. Latest stays 2.11.0 (named PassMan) until a SecretSpace 2.x or 3.0 release.
🤖 Generated with Claude Code
https://claude.ai/code/session_011ojnyVg7ccsR3pZ64s7aRH