Commit graph

14010 commits

Author SHA1 Message Date
Johannes Millan
a64b592705 fix(log): make export work better for android 2025-07-10 16:29:05 +02:00
Johannes Millan
0ca5723ad0 fix(log): make export work better for json 2025-07-10 15:57:31 +02:00
Johannes Millan
4ae0d109c3 Merge branch 'feat/better-logging'
* feat/better-logging:
  feat(log): add way to download logs from error and from settings page
  security: fix credential logging vulnerabilities
  feat(log): fine tune logging
  feat(log): filter log.ts from stacktraces
  refactor: remove local storage from action logger
  feat: add strategic logs for task due effects and add tasks service
  fix: remove duplicate PFLog imports
  refactor: replace SyncLog with PFLog in pfapi directory
  refactor: migrate all android logs to DroidLog context
  refactor: migrate all issue logs to IssueLog context
  refactor: use PFLog for all logging in pfapi directory
  refactor: use PluginLog for all logging in plugins directory
  fix: remove duplicate Log imports
  refactor: complete migration from console.* to Log methods
  refactor: replace console.* with Log methods throughout codebase
  refactor: update Log.withContext to use shortened method names
  feat(log): record history
  feat(log): implement new log system
2025-07-10 15:46:55 +02:00
Johannes Millan
8311425166 feat(log): add way to download logs from error and from settings page 2025-07-10 15:45:30 +02:00
Johannes Millan
475fca884d security: fix credential logging vulnerabilities 2025-07-10 15:44:59 +02:00
Johannes Millan
34920f604e feat(log): fine tune logging 2025-07-10 15:23:41 +02:00
Johannes Millan
8283f1e8e9 feat(log): filter log.ts from stacktraces 2025-07-10 15:17:27 +02:00
Johannes Millan
99c285b429 refactor: remove local storage from action logger
- Action logger now keeps logs in memory only
- Removed all localStorage operations
- Maintains same functionality for tracking last 30 actions
- More performant without persistence overhead
2025-07-10 15:11:10 +02:00
Johannes Millan
428d265a97 feat: add strategic logs for task due effects and add tasks service
- Added log when addAllDueToday is triggered after sync in task-due.effects
- Added log when overdue tasks are removed from today
- Added logs in AddTasksForTomorrow service to track:
  - When addAllDueToday starts with current date
  - When tomorrow tasks are moved to today
  - Summary of tasks found (repeatable, due with time, due with day)
- All logs use TaskLog with [task] context prefix
2025-07-10 15:05:20 +02:00
Johannes Millan
bb4811481e fix: remove duplicate PFLog imports
- Fixed duplicate imports in encrypt-and-compress-handler.service.ts
- Fixed duplicate imports in model-sync.service.ts
- Fixed duplicate imports in vector-clock.ts
- Fixed duplicate imports in database.ts
- Fixed duplicate imports in pfapi.ts
2025-07-10 14:58:49 +02:00
Johannes Millan
9c20096bb8 refactor: replace SyncLog with PFLog in pfapi directory
- Replace all SyncLog calls with PFLog throughout pfapi
- Modified 24 files with 246 total changes
- All pfapi logs now consistently use PFLog with [pf] context prefix
- Fixed duplicate import in model-ctrl.ts
2025-07-10 14:55:26 +02:00
Johannes Millan
1bac5f9280 refactor: migrate all android logs to DroidLog context
- Replace all Log.* calls with DroidLog.* in android-related files
- Modified 3 files with logging changes
- All android-related logs now have [droid] context prefix
2025-07-10 14:53:19 +02:00
Johannes Millan
53bc1af61c refactor: migrate all issue logs to IssueLog context
- Replace all Log.* calls with IssueLog.* in features/issue directory
- Modified 17 files with 42 total changes
- All issue-related logs now have [issue] context prefix
- Fixed unused Log import in jira-api.service.ts
2025-07-10 14:46:28 +02:00
Johannes Millan
de3d1106bd refactor: use PFLog for all logging in pfapi directory
- Replaced all Log.* calls with PFLog.* in pfapi directory
- Modified 24 files with 106 total changes
- All pfapi-related logs now have [pf] context prefix

This ensures consistent context-aware logging for all persistence framework
operations, making it easier to filter and debug data-related issues.
2025-07-10 14:35:56 +02:00
Johannes Millan
5007038fe8 refactor: use PluginLog for all logging in plugins directory
- Replaced all Log.* calls with PluginLog.* in plugins directory
- Modified 14 files with 179 total changes
- Removed unused Log imports
- All plugin-related logs now have [plugin] context prefix

This ensures consistent context-aware logging for all plugin operations,
making it easier to filter and debug plugin-related issues.
2025-07-10 14:32:37 +02:00
Johannes Millan
fd099ed4a1 fix: remove duplicate Log imports
- Fixed duplicate imports in 3 files:
  - language.service.ts
  - indexed-db-adapter.service.ts
  - global-theme.service.ts
- Created script to detect and fix duplicate imports automatically
- Build errors resolved
2025-07-10 14:28:03 +02:00
Johannes Millan
581d41cc0c refactor: complete migration from console.* to Log methods
- Replaced remaining 100 console.* calls across 100 files
- Fixed all console.log, console.error, console.warn calls
- Removed unused Log imports from 18 files
- Created force migration script to handle all edge cases
- All non-test files now use centralized Log class

Benefits:
- All application logs are now recorded for export
- Consistent log level filtering
- Better debugging with log history
- Centralized logging configuration
2025-07-10 14:25:02 +02:00
Johannes Millan
97f96f2393 refactor: replace console.* with Log methods throughout codebase
- Created migration script to replace console.log/info/error/warn/debug with Log methods
- Replaced 584 console calls across 89 files:
  - console.log → Log.log (385 occurrences)
  - console.info → Log.info (4 occurrences)
  - console.error → Log.err (107 occurrences)
  - console.warn → Log.err (87 occurrences)
  - console.debug → Log.debug (1 occurrence)
- Added appropriate import statements for Log
- Removed unused Log imports from files with only commented-out usage
- Fixed all linting errors

All logging now goes through our centralized Log class which:
- Records logs to history for export/download
- Provides consistent log level filtering
- Supports context-aware logging
- Trade-off: Line numbers show log.ts instead of actual location
2025-07-10 14:15:56 +02:00
Johannes Millan
f9902d59e4 refactor: update Log.withContext to use shortened method names
- Changed error() to err() as primary method
- Changed normal() to log() as primary method
- Added info() method using console.info
- Kept backwards compatibility aliases for error, normal, and warn
- Now withContext matches main logger API exactly
2025-07-10 13:46:18 +02:00
Johannes Millan
4cfb6c5dcf feat(log): record history 2025-07-10 13:39:30 +02:00
Johannes Millan
30998b21da feat(log): implement new log system 2025-07-10 12:36:14 +02:00
Johannes Millan
3e04a7c39a test: fix 2025-07-10 12:05:00 +02:00
Johannes Millan
6c84f6f00d fix(play-button): fix progress pie circle display and calculation
- Only show progress circle when task has time estimate
- Fix circumference calculation to match SVG radius (10)
- Fix stroke-dasharray and dashoffset values
- Show completed portion instead of remaining portion
- Use currentColor for stroke instead of hardcoded black
2025-07-10 10:59:06 +02:00
Johannes Millan
8976ad7296 Merge branch 'fix/various3'
* fix/various3:
  fix(sync): vector clock edge case when vector clients differ
  feat(sync): improve logging and change comparison to always conflict when one of the clocks is empty
2025-07-10 10:41:06 +02:00
Johannes Millan
27682eb0c7 fix(sync): vector clock edge case when vector clients differ 2025-07-10 10:40:22 +02:00
Johannes Millan
4eca179c69 fix: prevent submission of invalid forms #4725 2025-07-10 10:23:02 +02:00
Johannes Millan
4009a4256c feat(sync): improve logging and change comparison to always conflict when one of the clocks is empty 2025-07-10 09:52:22 +02:00
Johannes Millan
89fde6fc57 fix: set duration formly value to undefined rather than null on invalid value in the hopes it does something #4725 2025-07-10 09:44:05 +02:00
Johannes Millan
6b3ff3eb12 feat(sync): improve first sync experience
Closes #4566
2025-07-08 21:50:19 +02:00
Johannes Millan
584b195f7e feat(sync): improve first sync experience
Closes #4566
2025-07-08 21:29:17 +02:00
Johannes Millan
d0146c2677 fix: can't add task in android app
Closes #4675
2025-07-08 20:04:53 +02:00
Johannes Millan
6f082d9eeb feat(sync): preserve existing config (e.g. encryption password) when configuring auth for sync provider #4642 2025-07-08 19:41:35 +02:00
Johannes Millan
7d0c29812f fix: persist encryption password for WebDAV sync provider
The encryption password was not being saved when updating sync settings for the WebDAV provider. This caused users to have to re-enter their encryption password after every sync attempt. The fix ensures the encryptKey field is included when saving WebDAV provider configuration.
2025-07-08 18:57:11 +02:00
Johannes Millan
0762a3c3fe Merge remote-tracking branch 'origin/master'
* origin/master:
  feat: add Turkish translations for plugin system and theme
2025-07-08 17:10:23 +02:00
Johannes Millan
4b63554b18 fix: resolve failing unit tests related to MockStore and meta-reducers
- Fix planner-today-sync.spec.ts tests by simulating meta-reducer behavior
- Add currentState tracking to manually update store state after actions
- Fix save-to-db.effects.spec.ts by overriding store.dispatch to emit actions
- Ensure all 1504 tests now pass (10 skipped)

The issue was that MockStore doesn't execute meta-reducers, but tests
expected the side effects from plannerSharedMetaReducer and
taskSharedSchedulingMetaReducer to occur when dispatching actions.
2025-07-07 23:42:32 +02:00
Johannes Millan
c7fa2cec25 docs: add mobile logging strategy plan
- Document current mobile logging limitations
- Propose phased approach for log collection and export
- Include privacy-first design considerations
- Outline implementation details and testing strategy
2025-07-07 22:47:23 +02:00
Johannes Millan
1552ec8328 fix: ensure planned tasks appear in today view (#4708)
- Add defensive effect to catch tasks with dueDay=today missing from TODAY tag
- Enhanced logging for debugging task state synchronization issues
- Add integration tests for planner-today synchronization
- Fix issue where repeat tasks and planned tasks weren't appearing in today view
- Ensure task-shared-crud reducer properly adds tasks due today to TODAY tag

Addresses issue where users reported planned tasks not appearing in the "Today"
view or project views despite being scheduled in the planner.
2025-07-07 22:19:37 +02:00
Johannes Millan
da9ed3bdbc fix: opening task from backlog leading to error
Closes #4716
Closes #4705
2025-07-07 19:42:15 +02:00
Johannes Millan
724c5fd8a7
Merge pull request #4711 from Cyber-Syntax/master
Add Turkish translations for plugin system and theme
2025-07-07 00:28:11 +02:00
Cyber-Syntax
adc3381918 feat: add Turkish translations for plugin system and theme 2025-07-06 22:00:15 +03:00
Johannes Millan
d0553a8d13 build: fix google play auto release 2025-07-06 16:56:50 +02:00
Johannes Millan
43d335be31 14.0.5 2025-07-06 16:12:04 +02:00
Johannes Millan
8e9204dc2d test: fix 2025-07-06 16:00:13 +02:00
Johannes Millan
e3b77aa51f 14.0.4 2025-07-06 12:48:46 +02:00
Johannes Millan
821f528b8f feat: improve due creation and potentially fix the issue when tasks for today were not added until another task was added manually 2025-07-06 09:44:30 +02:00
Johannes Millan
addbba42ed refactor: cleanup 2025-07-06 09:23:17 +02:00
Johannes Millan
0c9cea4698 fix: warning 2025-07-05 22:05:55 +02:00
Johannes Millan
a9238da152 feat(i18n): extract hardcoded strings from sync safety backups component
- Add comprehensive translation keys under F.SYNC.SAFETY_BACKUP
- Replace all hardcoded UI strings with translation pipes
- Update component to use TranslateService for dynamic text
- Ensure all user-facing text is now translatable

Part of ongoing internationalization effort
2025-07-05 21:37:56 +02:00
Johannes Millan
b4ec2facfb feat(sync): improve id generation etc 2025-07-05 21:26:18 +02:00
Johannes Millan
1cd1b4cebe chore(themes): sort themes alphabetically in selector
- Reordered themes alphabetically (Arc, Dark Base, Dracula, Nord Polar Night, Nord Snow Storm)
- Default theme remains at the top as it's the system default
2025-07-05 21:17:41 +02:00