148 Commits

Author SHA1 Message Date
William Valentin
40376a9cfc Add comprehensive tests for error handling, input validation, search filtering, and UI components
Some checks failed
Build and Push Docker Image / build-and-push (push) Has been cancelled
- Implemented unit tests for the ErrorHandler class, covering error handling, frequency tracking, and performance warnings.
- Created integration tests for input validation, error handling, auto-save functionality, and search/filter systems.
- Developed unit tests for the DataFilter, QuickFilters, and SearchHistory classes to ensure filtering logic works as expected.
- Added tests for the SearchFilterWidget UI component, verifying initialization, filter functionality, and responsiveness.
- Included edge case tests for error handling without UI manager and handling of None values.
v1.13.6
2025-08-06 10:58:55 -07:00
William Valentin
422617eb6c feat: Update documentation structure and content
- Added a link to the Recent Improvements section in the README.md for better visibility of new features.
- Removed the SEARCH_FILTER_FIX.md file as its content has been integrated into other documentation.
- Deleted the consolidate_docs.py script as its functionality is no longer needed after the documentation consolidation.
- Removed the outdated CHANGELOG.md file and replaced it with a new structure that consolidates all changelog information.
- Created a new DOCUMENTATION_INDEX.md file to provide a comprehensive guide to the documentation structure.
- Updated the docs/README.md to reflect the new documentation organization and included links to preserved legacy documentation.
2025-08-06 10:58:25 -07:00
William Valentin
0bfbdfe979 feat: Add AI coding guidelines and project overview to documentation 2025-08-06 09:56:06 -07:00
William Valentin
7bb06fabdd feat: Implement search and filter functionality in MedTrackerApp
- Added DataFilter class for managing filtering and searching of medical data.
- Introduced SearchFilterWidget for UI controls related to search and filters.
- Integrated search and filter features into MedTrackerApp, allowing users to filter data by date range, medicine status, and pathology scores.
- Implemented quick filters for common use cases (last week, last month, high symptoms).
- Enhanced data loading and display logic to accommodate filtered data.
- Added error handling for data loading issues.
- Updated UIManager to reflect filter status in the application.
- Improved entry validation in add_new_entry method to ensure data integrity.
2025-08-06 09:55:47 -07:00
William Valentin
780d44775d chore: cleanup 2025-08-06 09:49:57 -07:00
William Valentin
5a375e0d21 feat: consolidate test structure and enhance header visibility across themes 2025-08-05 15:48:15 -07:00
William Valentin
a521ed6e9a Add quick test runner and enhance run_tests script
Some checks failed
Build and Push Docker Image / build-and-push (push) Has been cancelled
- Introduced `quick_test.py` for running specific test categories (unit, integration, theme, all).
- Updated `run_tests.py` to improve test execution and reporting, including coverage.
- Removed outdated test scripts for keyboard shortcuts, menu theming, note saving, and entry updating.
- Added new test script `test_theme_changing.py` to verify theme changing functionality.
- Consolidated integration tests into `test_integration.py` for comprehensive testing of TheChart application.
- Updated theme manager to ensure color retrieval works correctly.
- Modified test constants to import from the correct module path.
v1.12.6
2025-08-05 15:09:13 -07:00
William Valentin
df9738ab17 feat: enhance menu theming with comprehensive documentation and testing support
Some checks failed
Build and Push Docker Image / build-and-push (push) Has been cancelled
v1.12.5
2025-08-05 14:06:42 -07:00
William Valentin
c3c88c63d2 Add theme management and settings functionality
Some checks failed
Build and Push Docker Image / build-and-push (push) Has been cancelled
- Introduced `ThemeManager` to handle application themes using `ttkthemes`.
- Added `SettingsWindow` for user preferences including theme selection and UI settings.
- Integrated theme selection into the main application with a menu for quick access.
- Enhanced UI components with custom styles based on the selected theme.
- Implemented tooltips for better user guidance across various UI elements.
- Updated dependencies to include `ttkthemes` for improved visual appeal.
v1.11.5
2025-08-05 11:58:25 -07:00
William Valentin
86606d56b6 feat: add comprehensive keyboard shortcuts for improved navigation and productivity
Some checks failed
Build and Push Docker Image / build-and-push (push) Has been cancelled
v1.10.5
2025-08-05 10:05:32 -07:00
William Valentin
9790f2730a feat: update version to 1.9.5 in Makefile and pyproject.toml
Some checks failed
Build and Push Docker Image / build-and-push (push) Has been cancelled
v1.9.5
2025-08-02 10:35:44 -07:00
William Valentin
fdcc210fc4 feat: add status bar to UI for improved user feedback and information display 2025-08-02 10:31:17 -07:00
William Valentin
b7a22524d7 Feat: add export functionality with GUI for data and graphs
Some checks failed
Build and Push Docker Image / build-and-push (push) Has been cancelled
- Implemented ExportWindow class for exporting data and graphs in various formats (JSON, XML, PDF).
- Integrated ExportManager to handle export logic.
- Added export option in the main application menu.
- Enhanced user interface with data summary and export options.
- Included error handling and success messages for export operations.
- Updated dependencies in the lock file to include reportlab and lxml for PDF generation.
v1.8.5
2025-08-02 10:00:24 -07:00
William Valentin
156dcd1651 feat: Import LOG_CLEAR constant for logging clarity 2025-08-01 15:15:04 -07:00
William Valentin
1d310dd081 feat: Update version to 1.7.5 in Makefile, docker-build.sh, and pyproject.toml
Some checks failed
Build and Push Docker Image / build-and-push (push) Has been cancelled
v1.7.5
2025-08-01 14:45:58 -07:00
William Valentin
abd1fa33cf refactor: Simplify UI creation methods by removing dynamic variants and consolidating functionality 2025-08-01 14:41:58 -07:00
William Valentin
03ef9e761a feat: Update version to 1.7.4 in Makefile, docker-build.sh, and pyproject.toml
Some checks failed
Build and Push Docker Image / build-and-push (push) Has been cancelled
v1.7.4
2025-08-01 14:12:06 -07:00
William Valentin
ca1f8c976d fix: notes are saved again
feat: Add test scripts for note saving and updating functionality
2025-08-01 14:09:29 -07:00
William Valentin
7392709a27 feat: Uncomment .vscode directory in .gitignore to include IDE settings 2025-08-01 13:25:47 -07:00
William Valentin
623050478a feat: Update version to 1.7.3 in Makefile, docker-build.sh, and pyproject.toml 2025-08-01 13:21:48 -07:00
William Valentin
41d91d9c30 feat: Center main window on screen during initialization
Some checks failed
Build and Push Docker Image / build-and-push (push) Has been cancelled
v1.7.3
2025-08-01 13:05:24 -07:00
William Valentin
14d9943665 feat: Update medicine toggles to be unchecked by default for improved user experience
Some checks failed
Build and Push Docker Image / build-and-push (push) Has been cancelled
v1.7.2
2025-08-01 12:53:19 -07:00
William Valentin
13a4826415 feat: Enhance DataManager and GraphManager with performance optimizations and caching 2025-08-01 12:46:51 -07:00
William Valentin
949e43ac6c feat: Bump version to 1.6.1 in Makefile, pyproject.toml, and CHANGELOG.md
Some checks failed
Build and Push Docker Image / build-and-push (push) Has been cancelled
v1.6.1 v1.6.2
2025-07-31 11:42:13 -07:00
William Valentin
33d7ae8d9f feat: Remove outdated testing documentation and add comprehensive development and feature guides
- Deleted `TESTING_SETUP.md` and `TEST_UPDATES_SUMMARY.md` as they were outdated.
- Introduced `CHANGELOG.md` to document notable changes and version history.
- Added `DEVELOPMENT.md` for detailed development setup, testing framework, and debugging guidance.
- Created `FEATURES.md` to outline core features and functionalities of TheChart.
- Established `README.md` as a centralized documentation index for users and developers.
2025-07-31 11:39:12 -07:00
William Valentin
e5e654a0b3 fix: Correct shell activation command in Makefile for proper environment setup
Some checks failed
Build and Push Docker Image / build-and-push (push) Has been cancelled
v1.6.0
2025-07-31 11:20:18 -07:00
William Valentin
00443a540f chore: Remove obsolete test scripts and unused methods from the data manager
- Deleted test scripts for dose tracking, UI functionality, dynamic data, edit functionality, and final workflow.
- Removed the `add_medicine_dose` method from the DataManager class as it is no longer needed.
2025-07-31 11:11:21 -07:00
William Valentin
59251ced31 chore: moved tests scripts 2025-07-31 10:18:09 -07:00
William Valentin
9471b91f4c feat: Update default_enabled states for bupropion and propranolol to false 2025-07-31 10:06:25 -07:00
William Valentin
c755f0affc Add comprehensive tests for dose tracking functionality
- Implemented `test_dose_parsing_simple.py` to validate the dose parsing workflow.
- Created `test_dose_save.py` to verify the saving functionality of dose tracking.
- Added `test_dose_save_simple.py` for programmatic testing of dose saving without UI interaction.
- Developed `test_final_workflow.py` to test the complete dose tracking workflow, ensuring doses are preserved during edits.
- Enhanced `conftest.py` with a mock pathology manager for testing.
- Updated `test_data_manager.py` to include pathology manager in DataManager tests and ensure compatibility with new features.
2025-07-31 09:50:45 -07:00
William Valentin
b8600ae57a feat: Remove unused imports from test files for cleaner code 2025-07-30 16:02:26 -07:00
William Valentin
d7d4b332d4 Add medicine management functionality with UI and data handling
- Implemented MedicineManagementWindow for adding, editing, and removing medicines.
- Created MedicineManager to handle medicine configurations, including loading and saving to JSON.
- Updated UIManager to dynamically generate medicine-related UI components based on the MedicineManager.
- Enhanced test suite with mock objects for MedicineManager to ensure proper functionality in DataManager tests.
- Added validation for medicine input fields in the UI.
- Introduced default medicine configurations for initial setup.
2025-07-30 16:01:02 -07:00
William Valentin
ea30cb88c9 feat: Update default toggle states for bupropion and propranolol to false 2025-07-30 14:46:25 -07:00
William Valentin
b76191d66d feat: Implement dose calculation fix and enhance legend feature
Some checks failed
Build and Push Docker Image / build-and-push (push) Has been cancelled
- Fixed dose calculation logic in `_calculate_daily_dose` to correctly parse timestamps with multiple colons.
- Added comprehensive test cases for various dose formats and edge cases in `test_dose_calculation.py`.
- Enhanced graph legend to display individual medicines with average dosages and track medicines without dose data.
- Updated legend styling and positioning for better readability and organization.
- Created new tests for enhanced legend functionality, including handling of medicines with and without data.
- Improved mocking for matplotlib components in tests to prevent TypeErrors.
v1.5.0
2025-07-30 14:22:07 -07:00
William Valentin
d14d19e7d9 feat: add medicine dose graph plotting and toggle functionality with comprehensive tests
Some checks failed
Build and Push Docker Image / build-and-push (push) Has been cancelled
v1.4.0
2025-07-30 13:18:25 -07:00
William Valentin
0a8d27957f feat: enhance symptom scale creation with improved layout and dynamic value display 2025-07-30 12:41:25 -07:00
William Valentin
7e04aebd5d feat: update version to 1.3.4 in pyproject.toml and uv.lock 2025-07-30 12:35:07 -07:00
William Valentin
b7c01bc373 Refactor method names for clarity and consistency across the application
Some checks failed
Build and Push Docker Image / build-and-push (push) Has been cancelled
- Renamed `initialize_csv` to `_initialize_csv_file` in `DataManager` for better clarity.
- Updated method calls in `GraphManager` from `_create_toggle_controls` to `_create_chart_toggles` and `_on_toggle_changed` to `_handle_toggle_changed`.
- Changed method names in `MedTrackerApp` from `on_closing` to `handle_window_closing`, `add_entry` to `add_new_entry`, and `load_data` to `refresh_data_display`.
- Adjusted corresponding test method names in `TestMedTrackerApp` to reflect the new method names.
- Updated `UIManager` method names from `setup_icon` to `setup_application_icon` and adjusted related tests accordingly.
v1.3.4
2025-07-30 12:32:17 -07:00
William Valentin
e0faf20a56 feat: Remove obsolete CSV migration target from Makefile 2025-07-30 11:31:34 -07:00
William Valentin
7380d9a8a9 feat: Add logging directory and initialize app log file in Dockerfile 2025-07-30 11:21:44 -07:00
William Valentin
85e30671d4 feat: Enhance dose history parsing and add unit tests for improved functionality
Some checks failed
Build and Push Docker Image / build-and-push (push) Has been cancelled
v1.3.3
2025-07-30 10:02:17 -07:00
William Valentin
b259837af4 feat: Add test script for mouse wheel scrolling functionality in entry and edit windows
Some checks failed
Build and Push Docker Image / build-and-push (push) Has been cancelled
v1.3.2
2025-07-29 17:44:14 -07:00
William Valentin
aad02f0d36 feat: Improve canvas scrolling functionality with enhanced mouse wheel event handling 2025-07-29 17:42:38 -07:00
William Valentin
30750710b8 feat: Enhance edit window UI with improved layout and scrolling functionality 2025-07-29 17:28:52 -07:00
William Valentin
fd1f9a43c6 feat: Add release notes generation and Docker image information to build workflow 2025-07-29 17:09:57 -07:00
William Valentin
21dd1fc9c8 refactor: Update import statements to include 'src' prefix for module paths
Some checks failed
Build and Push Docker Image / build-and-push (push) Has been cancelled
v1.2.2
2025-07-29 16:52:46 -07:00
William Valentin
5243352867 refactor: Remove coverage.xml file to streamline project structure 2025-07-29 16:41:40 -07:00
William Valentin
387981aa47 refactor: Remove __init__.py file and associated metadata 2025-07-29 16:41:29 -07:00
William Valentin
13b2c9c416 fix: Correct dotenv loading to use dynamic directory based on execution context 2025-07-29 16:38:21 -07:00
William Valentin
4c04bfb92e feat: Add debug logging to PyInstaller deployment process 2025-07-29 16:36:04 -07:00