Skip to content

Commit e55fb6e

Browse files
Lukas Geigerclaude
andcommitted
fix(store): declare database file types and correct the package identity
Zwei Fehler, die zusammen dafuer sorgten, dass ein Doppelklick auf eine .db-Datei die App nicht oeffnete und ein Rebuild aus dem Repository nicht zur veroeffentlichten App gepasst haette: 1. Das AppxManifest deklarierte keine uap:FileTypeAssociation. Die App erschien nicht unter "Oeffnen mit". Die Auswertung von sys.argv[1] war dagegen bereits vorhanden - sie wird jetzt durch Tests festgehalten. 2. store_package.json fuehrte identity_name "Geiger.SQLiteViewer". Im Partner Center ist die App als "Geiger.SQLiteViewerPro" registriert (Produkt 9P6H501XB8JT). Der Wert stammte aus einem veralteten Repository-Stand; die OneDrive-Arbeitskopie war korrekt. - store_package.json: file_types (.db/.sqlite/.sqlite3), execution_alias, languages (de-DE, en-US), identity_name korrigiert, store_id ergaenzt, Paketversion 2.0.1.0 - APP_VERSION 2.0.0 -> 2.0.1 (stand nicht im Einklang mit pyproject 2.0.1) - Manifest und Store-Icons werden aus store_package.json erzeugt (store-packager 2.2.0); MaxVersionTested 10.0.19041.0 -> 10.0.22621.0 - tests/test_cli_db_argument.py: haelt die Argumentauswertung fest und prueft, dass Manifest-Endungen und Dateidialog uebereinstimmen. Ohne GUI-Instanziierung, weil SqlViewer() ohne Anzeige blockiert statt zu scheitern (ein erster Entwurf lief deshalb in einen 10-Minuten-Timeout). Store: eingereicht als Submission 1152921505701721645, Status Certification. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Ecb7NHD7MqKN6FeUy39W1m
1 parent d832fd1 commit e55fb6e

15 files changed

Lines changed: 187 additions & 4 deletions

CHANGELOG.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,32 @@
11
# Changelog
22

3+
## [2.0.1] - 2026-08-23
4+
5+
### Fixed
6+
- **Store-Paket registrierte keinen Datenbank-Handler.** Das `AppxManifest.xml` deklarierte
7+
keine `uap:FileTypeAssociation`; eine aus dem Store installierte App erschien deshalb nicht
8+
unter „Öffnen mit" und ein Doppelklick auf eine `.db` startete sie nicht. Ergänzt: `.db`,
9+
`.sqlite`, `.sqlite3` sowie der Ausführungsalias `sqliteviewer.exe`.
10+
Die Auswertung von `sys.argv[1]` war bereits vorhanden und wird jetzt durch Tests festgehalten.
11+
- **Falsche Paket-Identität im Repository.** `store_package.json` führte
12+
`Geiger.SQLiteViewer`, im Partner Center ist die App aber als `Geiger.SQLiteViewerPro`
13+
registriert (Produkt `9P6H501XB8JT`). Ein aus diesem Stand gebautes Paket hätte nicht zur
14+
veröffentlichten App gepasst. Korrigiert, `store_id` ergänzt.
15+
- Versionsdrift behoben: `APP_VERSION` stand auf `2.0.0`, `pyproject.toml` auf `2.0.1`.
16+
17+
### Added
18+
- `tests/test_cli_db_argument.py` — hält die Argument-Auswertung fest und prüft zusätzlich,
19+
dass die im Manifest deklarierten Endungen mit denen des Dateidialogs übereinstimmen.
20+
Bewusst ohne GUI-Instanziierung: `SqlViewer()` blockiert ohne Anzeige, statt zu scheitern.
21+
- Sprachen `de-DE` und `en-US` im Paket hinterlegt.
22+
23+
### Changed
24+
- Paketversion `2.0.0.0``2.0.1.0`; `MaxVersionTested` `10.0.19041.0``10.0.22621.0`.
25+
- Manifest und Store-Icons werden aus `store_package.json` erzeugt (store-packager 2.2.0).
26+
27+
### Store
28+
- Eingereicht am 2026-08-23, Submission `1152921505701721645`, Status `Certification`.
29+
330
## [Unreleased]
431

532
### Added

SQLiteViewer.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
from typing import Optional, List, Tuple, Any
2929

3030
APP_TITLE = "SQLite Viewer Pro"
31-
APP_VERSION = "2.0.0"
31+
APP_VERSION = "2.0.1"
3232
DEFAULT_LIMIT = 1000
3333
APP_ICON_PATH = os.path.join(os.path.dirname(os.path.abspath(__file__)), "SQLiteViewer.ico")
3434

store_package.json

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,29 @@
22
"app_name": "SQLite Viewer Pro",
33
"publisher": "CN=52596601-BAB4-4F3F-B182-E8F3F273B202",
44
"publisher_display": "Geiger",
5-
"identity_name": "Geiger.SQLiteViewer",
6-
"version": "1.0.0.0",
5+
"identity_name": "Geiger.SQLiteViewerPro",
6+
"version": "2.0.1.0",
77
"description": "Leichtgewichtiger SQLite-Datenbank-Browser mit GUI, Read-only-Zugriff sowie CSV- und JSON-Export.",
88
"executable": "SQLiteViewer.exe",
99
"capabilities": "internetClient,runFullTrust",
1010
"category": "Developer Tools",
1111
"age_rating": "3+",
1212
"privacy_url": "https://github.com/file-bricks/SQLiteViewer/blob/master/PRIVACY_POLICY.md",
13-
"support_url": "https://github.com/file-bricks/SQLiteViewer/issues"
13+
"support_url": "https://github.com/file-bricks/SQLiteViewer/issues",
14+
"languages": [
15+
"de-DE",
16+
"en-US"
17+
],
18+
"file_types": {
19+
"name": "sqlite",
20+
"display_name": "SQLite-Datenbank",
21+
"info_tip": "Mit SQLite Viewer Pro öffnen",
22+
"extensions": [
23+
".db",
24+
".sqlite",
25+
".sqlite3"
26+
]
27+
},
28+
"execution_alias": "sqliteviewer.exe",
29+
"store_id": "9P6H501XB8JT"
1430
}
Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Package xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
3+
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
4+
xmlns:uap3="http://schemas.microsoft.com/appx/manifest/uap/windows10/3"
5+
xmlns:desktop="http://schemas.microsoft.com/appx/manifest/desktop/windows10"
6+
xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
7+
IgnorableNamespaces="uap uap3 desktop rescap">
8+
9+
<Identity Name="Geiger.SQLiteViewerPro"
10+
Publisher="CN=52596601-BAB4-4F3F-B182-E8F3F273B202"
11+
Version="2.0.1.0" />
12+
13+
<Properties>
14+
<DisplayName>SQLite Viewer Pro</DisplayName>
15+
<PublisherDisplayName>Geiger</PublisherDisplayName>
16+
<Description>Leichtgewichtiger SQLite-Datenbank-Browser mit GUI, Read-only-Zugriff sowie CSV- und JSON-Export.</Description>
17+
<Logo>icons\icon_50x50.png</Logo>
18+
</Properties>
19+
20+
<Dependencies>
21+
<TargetDeviceFamily Name="Windows.Desktop"
22+
MinVersion="10.0.17763.0"
23+
MaxVersionTested="10.0.22621.0" />
24+
</Dependencies>
25+
26+
<Resources>
27+
<Resource Language="de-DE"/>
28+
<Resource Language="en-US"/>
29+
</Resources>
30+
31+
<Capabilities>
32+
<Capability Name="internetClient"/>
33+
<rescap:Capability Name="runFullTrust"/>
34+
35+
</Capabilities>
36+
37+
<Applications>
38+
<Application Id="SQLiteViewerProApp"
39+
Executable="SQLiteViewer.exe"
40+
EntryPoint="Windows.FullTrustApplication">
41+
<uap:VisualElements DisplayName="SQLite Viewer Pro"
42+
Description="Leichtgewichtiger SQLite-Datenbank-Browser mit GUI, Read-only-Zugriff sowie CSV- und JSON-Export."
43+
Square150x150Logo="icons\icon_150x150.png"
44+
Square44x44Logo="icons\icon_44x44.png"
45+
BackgroundColor="transparent">
46+
<uap:DefaultTile Wide310x150Logo="icons\icon_310x150.png" />
47+
</uap:VisualElements>
48+
<Extensions>
49+
<uap:Extension Category="windows.fileTypeAssociation">
50+
<uap:FileTypeAssociation Name="sqlite">
51+
<uap:DisplayName>SQLite-Datenbank</uap:DisplayName>
52+
<uap:Logo>icons\icon_44x44.png</uap:Logo>
53+
<uap:InfoTip>Mit SQLite Viewer Pro öffnen</uap:InfoTip>
54+
<uap:SupportedFileTypes>
55+
<uap:FileType>.db</uap:FileType>
56+
<uap:FileType>.sqlite</uap:FileType>
57+
<uap:FileType>.sqlite3</uap:FileType>
58+
</uap:SupportedFileTypes>
59+
</uap:FileTypeAssociation>
60+
</uap:Extension>
61+
<uap3:Extension Category="windows.appExecutionAlias"
62+
Executable="SQLiteViewer.exe"
63+
EntryPoint="Windows.FullTrustApplication">
64+
<uap3:AppExecutionAlias>
65+
<desktop:ExecutionAlias Alias="sqliteviewer.exe" />
66+
</uap3:AppExecutionAlias>
67+
</uap3:Extension>
68+
</Extensions>
69+
</Application>
70+
</Applications>
71+
</Package>
37.2 KB
Loading
68.5 KB
Loading
129 KB
Loading
4.4 KB
Loading
5.53 KB
Loading
-24.4 KB
Binary file not shown.

0 commit comments

Comments
 (0)