* refactor!: organize project layout
* refactor: organize tests
* fix: change main.py with __main__.py in tagstudio.spec
* refactor: rename renderer.py to file_renderer.py
* fix: fix json migration UI and tests
* fix: just replace the Qt stuff with the actual iterator, please
* fix: skip UI iterator logic and just run iterator in migration modal
* fix: remove unnecessary for loop in test
* refactor: minor improvement of version check
* refactor: don't use Library._all_entries in migrations
* chore: ruff format
* refactor: get_version split
* fix: typo
* doc: update note on deprecation of preferences table
* feat: add per-tag display options.
* feat: bump DB_VERSION to 301, add migration.
* tests: add tests.
* docs: document cateogry display options.
* docs: document library versions 300 and 301.
* fix: resolve ruff and pyright issues.
* fix: redo migration in the new style.
* fix: Remove unnecessary @staticmethod decorators.
* fix: Bump library version to 400.
* fix: Fix color order in colored_radio_button_style.
* fix: Commit the library produced by pytest.
* test: Add test for removing a category during tag creation.
* fix: Fix removing categories during tag creation.
* test: Add test for adding another tag after removing an existing category.
* fix: Fix adding another tag after removing an existing category.
* feat: Add separators between widgets.
* docs: Fix version in library-changes.md.
* test: Test removing a category inherited both directly and indirectly.
* fix: Fix removing a category inherited both directly and indirectly.
---------
Co-authored-by: Travis Abendshien <46939827+cyanvoxel@users.noreply.github.com>
* 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