feat: .kc Layer 1 — manifest auto-creation and platform file associations #204

Merged
forbes merged 1 commits from feat/kc-layer1-finish into main 2026-02-14 18:47:58 +00:00
Owner

Finishes Layer 1 of the .kc file format implementation per KC_SPECIFICATION.md.

Changes:

  • kc_format.py: auto-create silo/manifest.json with UUID, timestamps, and username when saving a .kc file that lacks one. Updates modified_at on each save.
  • kindred-create.desktop: register application/x-kindred-create MIME type
  • kindred-create.xml: add .kc glob patterns with dedicated MIME type

Combined with the existing Layer 1 work (PR #186), this completes all Layer 1 acceptance criteria:

  • .kc files open in Create without errors
  • Save As .fcstd strips silo/ (C++ ZIP rewrite)
  • Save As .kc ensures silo/manifest.json exists
  • Platform file associations for .kc
Finishes Layer 1 of the .kc file format implementation per KC_SPECIFICATION.md. Changes: - kc_format.py: auto-create silo/manifest.json with UUID, timestamps, and username when saving a .kc file that lacks one. Updates modified_at on each save. - kindred-create.desktop: register application/x-kindred-create MIME type - kindred-create.xml: add .kc glob patterns with dedicated MIME type Combined with the existing Layer 1 work (PR #186), this completes all Layer 1 acceptance criteria: - .kc files open in Create without errors - Save As .fcstd strips silo/ (C++ ZIP rewrite) - Save As .kc ensures silo/manifest.json exists - Platform file associations for .kc
forbes added 1 commit 2026-02-14 16:58:01 +00:00
feat: .kc Layer 1 — manifest auto-creation and platform file associations
Some checks failed
Build and Test / build (pull_request) Has been cancelled
50788a59f5
kc_format.py:
- Auto-create silo/manifest.json with default fields (UUID, timestamps,
  username) when saving a .kc file that lacks one
- Update modified_at timestamp on each save
- KC_VERSION = 1.0

Platform integration:
- kindred-create.desktop: add application/x-kindred-create MIME type
- kindred-create.xml: register .kc glob patterns with dedicated MIME type
  (application/x-kindred-create), separate from .fcstd type
forbes force-pushed feat/kc-layer1-finish from 50788a59f5 to 04835c3629 2026-02-14 18:47:16 +00:00 Compare
forbes merged commit f06bb96fdb into main 2026-02-14 18:47:58 +00:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: kindred/create#204