* fix: backup library before making any changes
* refactor: inline make_tables + minor cleanup
* refactor: remove unnecessary assurance
Bumping the auto increment value has been done since the original sql PR, so it doesn't need to be done on migrations.
See e5e7b8afc6.
* refactor: don't blindly create all tables in the beginning
The only table that has been added since DB version 6 (the earliest supported version), is the versions table in DB version 101.
This commit removes the "create all tables" statement, and instead creates the versions table in the 101 migration.
See 12e074b71d.
* refactor: don't require setting library_dir to create a backup
* refactor: move migrations to different file
* refactor: package each migration in a class
* fix: some syntax errors had slipped through
* fix: allow set_version to fail, but don't commit in that case
* refactor: condense imports
* fix: add override decorators
* refactor: move set_version to DBMigrations
* refactor: remove unnecessary assignment
* refactor: use _ instead of __
* fix: add missing field templates tables
* feat(ui): replace add tag modal with autocomplete search/create bar
* refactor: code cleanup and fixes
* refactor: RADICAL mvc refactor...
* feat: add setting to open edit window when creating tags
* refactor(ui): refactor preview panel into new MVC pattern
* refactor: remove controller suffix from preview_panel.py
* Revert "refactor: remove controller suffix from preview_panel.py"
This reverts commit c8ba9b15c2.
* feat(ui): add autocomplete search for field templates
* fix(ui): fix issues with tag and field widget appearances
* refactor(ui): use Qt's .layout() method instead of _layout references
* feat(ui): add underline indicator for search bar items
* refactor: remove view parameters
* refactor(ui): refactor PanelModal and PanelWidget into MVC Modal, ModalView, and ModalContent classes
* refactor(ui): refactor SearchPanel classes to use newer MVC pattern
* fix: remove deprecated methods
* chore: fixes after rebase
* feat(ui): replace add tag modal with autocomplete search/create bar
* refactor: code cleanup and fixes
* refactor: RADICAL mvc refactor...
* feat: add setting to open edit window when creating tags
* refactor(ui): refactor preview panel into new MVC pattern
* refactor: remove controller suffix from preview_panel.py
* refactor: remove unnecessary methods and properties
* Revert "refactor: remove controller suffix from preview_panel.py"
This reverts commit c8ba9b15c2.
* feat(ui): add autocomplete search for field templates
* fix(ui): fix issues with tag and field widget appearances
* refactor(ui): use Qt's .layout() method instead of _layout references
* refactor: remove view parameters
* refactor(ui): refactor PanelModal and PanelWidget into MVC Modal, ModalView, and ModalContent classes
* chore: fixes after rebase
The parallel steps can have a race condition if they both have a lock on
the final Ruff installation path.
Initially, the action was reused for formatting and linting as the
ruff-action sets the necessary environment variables and matchers,
responsible for the annotations on the GitHub UI. Though, as it turns
out, this is already done whenever Ruff is installed, there is no
"special magic" whenever execution of the process happens.
So, only use the action for setup once, and in the parallel steps we can
invoke Ruff ourselves.
* refactor: remove dead folders table
* fix: remove folder param from all uses of Entry constructor
* fix: missing filename column after migration
* fix: bump db version to 300, since it is a breaking change
* fix: add empty library fixture for version 202
* fix: correctly display duration statistic in preview panel
* style: format file_attributes.py with ruff
* refactor: consolidate preview thumb current file state
* refactor: remove another redundant current file state
* refactor: move generic format_duration function to string formatting util file
* refactor: tighten signal's declared types