Removed unnecessary imports across various modules to streamline the application's dependencies and improve loading times. Specific changes include the removal of unused Django model and admin imports in several apps, simplifying view imports by eliminating unutilized components, and cleaning up static CSS for better maintainability. Corrections were made to conditional expressions for clearer logic. The removal of the django.test.TestCase import in test files reflects a shift towards a different testing strategy or the current lack of tests. Exception handling has been made more explicit to avoid catching unintended exceptions, paving the way for more robust error handling and logging in the future. Additionally, a new CSS file was added for frontend enhancements, indicating ongoing UI/UX improvements.
These changes collectively aim to make the codebase more maintainable and efficient, reducing clutter and focusing on used functionalities. It's a step towards optimizing the application's performance and ensuring a clean, manageable codebase for future development.
Reinforced user data access rules to bolster security and reorganized distribution files into separate directories for cleaner structure. Added a new heatmap visualization for mood statistics on the dashboard, making user engagements more interactive and insightful. Implemented a JSON view to support the heatmap feature, fetching mood entries within a specified time range.
This change responds to the need for improved data security and a more engaging user interface, directly addressing user feedback for clearer insights into their mood patterns over time.
Introduced black and ruff into the development requirements to standardize code formatting and linting processes. This enhancement aims to maintain consistent coding styles and improve code quality, facilitating smoother collaboration among developers.
This commit introduces the initial set of database migrations required for setting up the foundational models of the messaging system within the application. These models include `GatewayUser`, `GatewayUserSetting`, `Notification`, and various scheduling entities to manage notification delivery timings. It lays the groundwork for linking users to their gateway preferences, storing customizable settings per gateway-user pair, and managing notifications with flexible scheduling options. This schema setup is crucial for supporting a dynamic and configurable messaging system, enabling efficient notification management and dispatching based on user preferences and predefined schedules.
By establishing a robust database schema upfront, we ensure that the application can scale effectively, facilitating ease of maintenance and future enhancements. This migration caters to the need for a cohesive and flexible data model to represent users, their notification preferences, and the logistics of notification dispatching and scheduling within the system.
Extended the copyright term to 2024 and updated the contact email to reflect the current address. This change ensures that the licensing information remains accurate and up-to-date, supporting proper legal attribution and communication avenues for software use and distribution.
This commit establishes the initial set of models required for the dream tracking feature within the application, including models for Dream, DreamMedia, Theme, DreamTheme, and ThemeRating, along with their associations. The structure allows for comprehensive tracking and categorization of user dreams, media associated with dreams, thematic elements, and ratings for these themes. This foundational work is critical for enabling detailed dream recording and analysis, supporting functionalities such as dream categorization, mood association, and user-specific customization.
The relationships between models facilitate advanced queries for insights and trends in dream content, mood correlations, and thematic popularity. The choice of fields and types ensures a balance between flexibility for future enhancements and the current performance requirements.
Introduced initial database migrations for GPS logging and Mood tracking functionality, setting the foundation for data model structures in these modules. The migrations define essential entities such as GPSTrack, GPSToken, GPSPoint for the GPS logging module, and Mood, Activity, Aspect among others for the Mood tracking module. This pivotal change enables storing and managing user-generated GPS and mood data efficiently, paving the way for the implementation of core features related to GPS tracking and mood analysis. By removing 'migrations/' from .gitignore, we ensure future migrations are tracked and version-controlled, facilitating smoother database schema updates and deployments.
Added a new `launch.json` configuration for VSCode to enable debugging Django applications directly within the IDE. This setup specifically configures the Python Debugger (`debugpy`) for Django with custom server port `8091`, enhancing the development workflow by allowing developers to debug their Django applications without the need for external tools. The configuration is tailored to provide a smoother integration of debugging capabilities, focusing on improving productivity and efficiency during the development process.
This change reflects a broader effort to streamline the development environment, ensuring that team members can quickly and effectively troubleshoot issues, test new features, and iterate on their Django applications within a familiar and integrated development environment.
Updated the django-polymorphic package to a specific alpha version (v4.0.0a) directly from its Git repository. This change ensures compatibility with ongoing project requirements and addresses potential issues with the previously used version. It is important to monitor the stability and updates of this alpha version closely in the project's development environment.
Migrated the django-multiselectfield dependency source to a new
repository URL to align with our updated internal hosting strategy. This
change ensures that our dependency management is consistent with current
guidelines and utilizes our private repository infrastructure for better
control and security.
Updated the property for setting the chart legend's label from `legend`
to `legend_label` in the `moodpies` function to align with the latest
library syntax. This change ensures compatibility with newer versions of
the visualization library, preventing potential issues with legend
rendering in mood statistics charts.
This commit streamlines mood and activity visualization code in
mood/statistics.py for better readability and maintainability. By
consolidating similar code blocks, replacing ' extension calls with
consistent double quotes, and reformatting large data structures for
clarity, we ensure the code is more Pythonic and easier to follow.
Additionally, the alterations in how pie charts and mood statistics are
generated not only maintain functionality but also reduce cognitive load
when navigating the codebase. These changes pave the way for future
enhancements and debugging efforts by making the codebase more
approachable.
Standardized the parameter name for setting chart height across all
chart creation functions in statistics.py. Replaced `plot_height` with
`height` to align with the latest visualization library conventions.
This change enhances code consistency and adheres to the updated library
API, ensuring future compatibility and easier maintenance.
Simplified the alert system in the topbar by removing outdated
notifications and placeholder content for messages. Introduced a generic
alert placeholder to hint at potential future alert implementations.
This change aims to declutter the UI and enhance user experience by
focusing on relevant and streamlined information. Additionally, the
removal of the message center underscores a shift towards simplifying
user interactions within the platform.