Skip to content

History / project_database

Revisions

  • Exports: DXF blocks and attributes, circle/arc fix, repeatable PDF, landscape PDF pages, wiring export columns, folder options in headless runs Documents PRs #1350-#1353, #1257/#1286/#1317, #1255, #1249, #1287/#1311, #1248, #1262. Print and export option labels now quote the current English interface. CLI page: settings location and QET_SETTINGS_DIR corrected. Project database page: --export-wiring reads wiring_list_view, not --export-cables/--export-wires.

    @ispyisail ispyisail committed Oct 7, 2026
  • Document merged features that had no wiki coverage Symbol editor background frame (#1164); configuration files and remembered dialog sizes (#1166, #1165); ranked-list search option (#1083); crash-recovery copies and crash reports in the FAQ (#1167, #1013, #1031, #1181); double-click wire colour and one-text-per-sheet applying at once (#1172, #1191); cabinet thumbnails (#1170); linked copies on paste/duplicate (#997); second click in a group (#1110); align icons (#1153); uuid lookups for sheets, tables and symbol texts (#1098, #1114); database filled from the document (#1142); value suggestions and text-width handles (#1021, #591).

    ispyisail committed Oct 2, 2026
  • Call a folio a sheet, as the English interface now does (PR #1216) Prose only: page URLs (folio_links, navigating_folios), image names, code, XML tag and variable names, and French menu names are unchanged. Readers arriving from older forum posts are told a sheet used to be called a folio. Generated by qelectrotech-docker tools/wiki-folio-sheet/rename.py.

    ispyisail committed Oct 1, 2026
  • project_database: #1122 and elements #83 merged; scripting: terminals by uuid (pending #1125), older wires' uuids; mcp_server: terminal uuids in qet_edit (pending #1126)

    ispyisail committed Sep 28, 2026
  • Drop pending notices for merged #1105-#1108, #1110, #1111; project_database: terminal uuids (#1116, #1118)

    ispyisail committed Sep 28, 2026
  • Groups: editing one member (#1110) and rotating a group (#1111), pending; wires in older projects have no lasting uuid yet (#1105, #1107 pending); scripting and MCP by wire uuid (#1106, #1108 pending)

    ispyisail committed Sep 28, 2026
  • Bring the wiki up to date with features merged since 19 September Stale notices: drop #1073's pending markers (merged), and the #927 and #929 "until it merges" notes (both merged a week ago). New pages: "3D mouse" (#1022-#1035) and "Pictures on a folio" (label from #1068, save cache from #1067, and the existing crop, transparency, mirror and handle features, none of which were documented). Updated: text grid for dragged texts (#1040) in mouse_modifiers, grid_and_element_size and preferences; conductor colour toolbar button (#929, #1005) in conductors; full contact comb option (#1010) and the correct meaning of terminalCount in element_linking; three new tables, drawing_item_view, item uuids (#1065) and read-only queries (#1066) in project_database and the XML reference pages; folio background colour remembered between runs (#1011); element information suggestions (#1021). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G2d2Zi8BfrYRPX88zhaoFG

    ispyisail committed Sep 27, 2026
  • Document the project database as what it is: a derived in-memory cache The name invites the assumption that QET has a real database behind a project. It does not -- projectDataBase is rebuilt from the .qet XML on every open and never written back, and almost everything that makes the current design safe follows from that: no schema version, no migrations, a wrong row costs nothing, the database cannot disagree with the drawing. Covers the lifecycle, the six tables and three views, why the schema is generated from elementInfoKeys() at runtime, why the nomenclature filter belongs in the view rather than the element table, and the terminal identity problem -- Terminal::uuid() is a catalog position id shared by every instance, which is why the primary key is (uuid, element_uuid) and why stableUuid() derives one from geometry. That last point is the one that matters for any future persistence work: a guessed identity is a cache miss today and a one-shot migration of everyone's projects if the database ever becomes the file format. EN/FR/DE.

    ispyisail committed Sep 11, 2026