Tree:
d8f2587d1c
ai-context
app_id_fix
build-ios
cross-platform-factory
cross-platform-factory-redux
d9085ced6df7dc7bdcd899959cea6489cab7f8b8
db-backup-cross-platform
deep-fix
deep_linking
design-tweaks-2023-12
elec-tweak
electron_fix_20250317
experimental_plugin
eye-slash
feat/image-feed-view-improvements
fix-service-worker
friend-tech-inspired-pwa-dialog
gifting-ui-2025-05
home-icon-enhancements
home-view-notification-improvements
homeview-cleanup-2025-03
homeview-refresh-2025-02
invite-client-side
main
master
new-storage
nostr
notification-request-permission-dialog
notify-time
offer-edit
passkey
passkey-cache
photo-reverse
plan-loc
playwright-pwa-install-test
profile-pic
project-gives
qrcode-capacitor
qrcode-reboot
registration-gate
remove-old-alerts
search-map-fix
side_step
simple-signer
split_build_process
sql-absurd-sql
sql-absurd-sql-back
sql-absurd-sql-further
sql-absurd-sql-further2
sql-wa-sqlite
starred-projects
sw-cleanup
tmp
trent-tweaks
tweaks
ui-fixes-2024-03
ui-fixes-2025-03
v-onboarding-2024-04
vite-version
why-migrate-fail
0.1.8
0.2.1
0.2.11
0.2.17
0.2.2
0.2.4
0.3.35
0.3.50
0.3.51
0.3.52
0.3.53
0.3.54
0.3.55
0.3.56
0.3.57
0.4.1
0.4.2
0.4.3
0.4.4
${ noResults }
5 Commits (d8f2587d1c3b4de391cc98ccb4acb69c1e34c4e6)
Author | SHA1 | Message | Date |
---|---|---|---|
|
786f07e067 |
feat(electron): Implement SQLite database initialization with proper logging
- Add comprehensive logging for database operations - Implement proper database path handling and permissions - Set up WAL journal mode and PRAGMA configurations - Create initial database schema with tables and triggers - Add retry logic for database operations - Implement proper error handling and state management Current state: - Database initialization works in main process - Connection creation succeeds with proper permissions - Schema creation and table setup complete - Logging system fully implemented - Known issue: Property name mismatch between main process and renderer causing read-only mode conflicts (to be fixed in next commit) Technical details: - Uses WAL journal mode for better concurrency - Implements proper file permissions checking - Sets up foreign key constraints - Creates tables: users, time_entries, time_goals, time_goal_entries - Adds automatic timestamp triggers - Implements proper connection lifecycle management Security: - Proper file permissions (755 for directory) - No hardcoded credentials - Proper error handling and logging - Safe file path handling Author: Matthew Raymer |
1 week ago |
|
710cc1683c |
fix(sqlite): Standardize connection options and improve error handling
Changes to sqlite-init.ts: - Standardized connection options format between main and renderer processes - Added explicit mode: 'rwc' to force read-write-create mode - Added connection registration verification - Added detailed logging of actual file paths - Added journal mode verification to detect read-only state - Removed redundant PRAGMA settings (now handled in main process) - Added more detailed error reporting for connection failures Security: - Ensures consistent read-write permissions across processes - Verifies database is not opened in read-only mode - Maintains proper file permissions (644) and directory permissions (755) Testing: - Verified connection creation in both main and renderer processes - Confirmed journal mode is set correctly - Validated connection registration - Tested error handling for invalid states Author: Matthew Raymer |
1 week ago |
|
ebef5d6c8d |
feat(sqlite): Initialize database with complete schema and PRAGMAs
Initial database setup with: - Created database at /home/matthew/Databases/TimeSafari/timesafariSQLite.db - Set optimized PRAGMAs for performance and safety: * WAL journal mode for better concurrency * Foreign key constraints enabled * Normal synchronous mode * Memory temp store * 4KB page size * 2000 page cache (8MB) - Created core tables: * schema_version (for migration tracking) * users (for user management) * time_entries (for time tracking) * time_goals (for goal setting) * time_goal_entries (for goal tracking) - Added automatic timestamp triggers for: * users.updated_at * time_entries.updated_at * time_goals.updated_at - Fixed connection handling to work with plugin's undefined return pattern - Added rich logging throughout initialization process Security: - Database created with proper permissions (644) - Directory permissions set to 755 - No encryption (as per requirements) - Foreign key constraints enabled for data integrity Testing: - Verified table creation - Confirmed schema version tracking - Validated connection registration - Tested WAL mode activation Author: Matthew Raymer |
1 week ago |
|
57191df416 |
feat(sqlite): Database file creation working, connection pending
- Successfully creates database file using plugin's open() method - Directory permissions and path handling verified working - Plugin initialization and echo test passing - Database file created at /home/matthew/Databases/TimeSafari/timesafariSQLite.db Key findings: - createConnection() returns undefined but doesn't error - open() silently creates the database file - Connection retrieval still needs work (getDatabaseConnectionOrThrowError fails) - Plugin structure confirmed: both class and default export available Next steps: - Refine connection handling after database creation - Add connection state verification - Consider adding retry logic for connection retrieval Technical details: - Using CapacitorSQLite from @capacitor-community/sqlite/electron - Database path: /home/matthew/Databases/TimeSafari/timesafariSQLite.db - Directory permissions: 755 (rwxr-xr-x) - Plugin version: 6.x (Capacitor 6+ compatible) |
1 week ago |
|
900c2521c7 |
WIP: Improve SQLite initialization and error handling
- Implement XDG Base Directory Specification for data storage - Use $XDG_DATA_HOME (defaults to ~/.local/share) for data files - Add proper directory permissions (700) for security - Fallback to ~/.timesafari if XDG paths fail - Add graceful degradation for SQLite failures - Allow app to boot even if SQLite initialization fails - Track and expose initialization errors via IPC - Add availability checks to all SQLite operations - Improve error reporting and logging - Security improvements - Set secure permissions (700) on data directories - Verify directory permissions on existing paths - Add proper error handling for permission issues TODO: - Fix database creation - Add retry logic for initialization - Add reinitialization capability - Add more detailed error reporting - Consider fallback storage options |
1 week ago |