From 0416fde7f5c1ca2aee47887aec92507dc178a44a Mon Sep 17 00:00:00 2001 From: Xarvex Date: Mon, 13 May 2024 14:50:04 -0500 Subject: [PATCH] Refactor: remove __init__.py files meant for Python versions before 3.3 (#160) * Refactor: remove __init__ meant for Python versions before 3.3 This does mess with a large amount of imports, as the system was being misused to re-export submodules. This change is necessary if PyInstaller is to work at all. * Thanks Ruff Co-authored-by: Travis Abendshien <46939827+CyanVoxel@users.noreply.github.com> --------- Co-authored-by: Travis Abendshien <46939827+CyanVoxel@users.noreply.github.com> --- tagstudio/__init__.py | 0 tagstudio/src/cli/__init__.py | 0 tagstudio/src/core/__init__.py | 0 tagstudio/src/core/utils/__init__.py | 0 tagstudio/src/qt/__init__.py | 0 tagstudio/src/qt/helpers/__init__.py | 3 -- tagstudio/src/qt/modals/__init__.py | 11 -------- tagstudio/src/qt/modals/build_tag.py | 5 ++-- tagstudio/src/qt/modals/delete_unlinked.py | 5 ++-- tagstudio/src/qt/modals/file_extension.py | 2 +- tagstudio/src/qt/modals/fix_dupes.py | 2 +- tagstudio/src/qt/modals/fix_unlinked.py | 8 ++++-- tagstudio/src/qt/modals/mirror_entities.py | 5 ++-- tagstudio/src/qt/modals/relink_unlinked.py | 5 ++-- tagstudio/src/qt/modals/tag_database.py | 5 ++-- tagstudio/src/qt/modals/tag_search.py | 3 +- tagstudio/src/qt/ts_qt.py | 32 ++++++++++------------ tagstudio/src/qt/widgets/__init__.py | 13 --------- tagstudio/src/qt/widgets/item_thumb.py | 7 +++-- tagstudio/src/qt/widgets/preview_panel.py | 22 +++++++-------- tagstudio/src/qt/widgets/tag_box.py | 7 +++-- tagstudio/src/qt/widgets/text.py | 2 +- tagstudio/src/qt/widgets/text_box_edit.py | 2 +- tagstudio/src/qt/widgets/text_line_edit.py | 2 +- tagstudio/tests/__init__.py | 0 tagstudio/tests/core/__init__.py | 0 26 files changed, 60 insertions(+), 81 deletions(-) delete mode 100644 tagstudio/__init__.py delete mode 100644 tagstudio/src/cli/__init__.py delete mode 100644 tagstudio/src/core/__init__.py delete mode 100644 tagstudio/src/core/utils/__init__.py delete mode 100644 tagstudio/src/qt/__init__.py delete mode 100644 tagstudio/src/qt/helpers/__init__.py delete mode 100644 tagstudio/src/qt/modals/__init__.py delete mode 100644 tagstudio/src/qt/widgets/__init__.py delete mode 100644 tagstudio/tests/__init__.py delete mode 100644 tagstudio/tests/core/__init__.py diff --git a/tagstudio/__init__.py b/tagstudio/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/tagstudio/src/cli/__init__.py b/tagstudio/src/cli/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/tagstudio/src/core/__init__.py b/tagstudio/src/core/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/tagstudio/src/core/utils/__init__.py b/tagstudio/src/core/utils/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/tagstudio/src/qt/__init__.py b/tagstudio/src/qt/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/tagstudio/src/qt/helpers/__init__.py b/tagstudio/src/qt/helpers/__init__.py deleted file mode 100644 index a79b66ab..00000000 --- a/tagstudio/src/qt/helpers/__init__.py +++ /dev/null @@ -1,3 +0,0 @@ -from .file_opener import open_file, FileOpenerHelper, FileOpenerLabel -from .function_iterator import FunctionIterator -from .custom_runnable import CustomRunnable diff --git a/tagstudio/src/qt/modals/__init__.py b/tagstudio/src/qt/modals/__init__.py deleted file mode 100644 index a4fe31b6..00000000 --- a/tagstudio/src/qt/modals/__init__.py +++ /dev/null @@ -1,11 +0,0 @@ -from .tag_search import TagSearchPanel -from .build_tag import BuildTagPanel -from .tag_database import TagDatabasePanel -from .add_field import AddFieldModal -from .file_extension import FileExtensionModal -from .delete_unlinked import DeleteUnlinkedEntriesModal -from .relink_unlinked import RelinkUnlinkedEntries -from .fix_unlinked import FixUnlinkedEntriesModal -from .mirror_entities import MirrorEntriesModal -from .fix_dupes import FixDupeFilesModal -from .folders_to_tags import FoldersToTagsModal diff --git a/tagstudio/src/qt/modals/build_tag.py b/tagstudio/src/qt/modals/build_tag.py index 579ffe1c..fe84c463 100644 --- a/tagstudio/src/qt/modals/build_tag.py +++ b/tagstudio/src/qt/modals/build_tag.py @@ -21,8 +21,9 @@ from PySide6.QtWidgets import ( from src.core.library import Library, Tag from src.core.palette import ColorType, get_tag_color from src.core.ts_core import TAG_COLORS -from src.qt.widgets import PanelWidget, PanelModal, TagWidget -from src.qt.modals import TagSearchPanel +from src.qt.widgets.panel import PanelWidget, PanelModal +from src.qt.widgets.tag import TagWidget +from src.qt.modals.tag_search import TagSearchPanel ERROR = f"[ERROR]" diff --git a/tagstudio/src/qt/modals/delete_unlinked.py b/tagstudio/src/qt/modals/delete_unlinked.py index 0df2918c..3787b18b 100644 --- a/tagstudio/src/qt/modals/delete_unlinked.py +++ b/tagstudio/src/qt/modals/delete_unlinked.py @@ -16,8 +16,9 @@ from PySide6.QtWidgets import ( ) from src.core.library import ItemType, Library -from src.qt.helpers import CustomRunnable, FunctionIterator -from src.qt.widgets import ProgressWidget +from src.qt.helpers.custom_runnable import CustomRunnable +from src.qt.helpers.function_iterator import FunctionIterator +from src.qt.widgets.progress import ProgressWidget # Only import for type checking/autocompletion, will not be imported at runtime. if typing.TYPE_CHECKING: diff --git a/tagstudio/src/qt/modals/file_extension.py b/tagstudio/src/qt/modals/file_extension.py index db9d000b..f0ce9195 100644 --- a/tagstudio/src/qt/modals/file_extension.py +++ b/tagstudio/src/qt/modals/file_extension.py @@ -7,7 +7,7 @@ from PySide6.QtCore import Signal, Qt from PySide6.QtWidgets import QVBoxLayout, QPushButton, QTableWidget, QTableWidgetItem from src.core.library import Library -from src.qt.widgets import PanelWidget +from src.qt.widgets.panel import PanelWidget class FileExtensionModal(PanelWidget): diff --git a/tagstudio/src/qt/modals/fix_dupes.py b/tagstudio/src/qt/modals/fix_dupes.py index 9c18590b..2a85f97e 100644 --- a/tagstudio/src/qt/modals/fix_dupes.py +++ b/tagstudio/src/qt/modals/fix_dupes.py @@ -17,7 +17,7 @@ from PySide6.QtWidgets import ( ) from src.core.library import Library -from src.qt.modals import MirrorEntriesModal +from src.qt.modals.mirror_entities import MirrorEntriesModal # Only import for type checking/autocompletion, will not be imported at runtime. if typing.TYPE_CHECKING: diff --git a/tagstudio/src/qt/modals/fix_unlinked.py b/tagstudio/src/qt/modals/fix_unlinked.py index d193fd07..0e27f85f 100644 --- a/tagstudio/src/qt/modals/fix_unlinked.py +++ b/tagstudio/src/qt/modals/fix_unlinked.py @@ -10,9 +10,11 @@ from PySide6.QtCore import QThread, Qt, QThreadPool from PySide6.QtWidgets import QWidget, QVBoxLayout, QHBoxLayout, QLabel, QPushButton from src.core.library import Library -from src.qt.helpers import FunctionIterator, CustomRunnable -from src.qt.modals import DeleteUnlinkedEntriesModal, RelinkUnlinkedEntries -from src.qt.widgets import ProgressWidget +from src.qt.helpers.function_iterator import FunctionIterator +from src.qt.helpers.custom_runnable import CustomRunnable +from src.qt.modals.delete_unlinked import DeleteUnlinkedEntriesModal +from src.qt.modals.relink_unlinked import RelinkUnlinkedEntries +from src.qt.widgets.progress import ProgressWidget # Only import for type checking/autocompletion, will not be imported at runtime. if typing.TYPE_CHECKING: diff --git a/tagstudio/src/qt/modals/mirror_entities.py b/tagstudio/src/qt/modals/mirror_entities.py index 29419ea0..f168c954 100644 --- a/tagstudio/src/qt/modals/mirror_entities.py +++ b/tagstudio/src/qt/modals/mirror_entities.py @@ -18,8 +18,9 @@ from PySide6.QtWidgets import ( ) from src.core.library import Library -from src.qt.helpers import FunctionIterator, CustomRunnable -from src.qt.widgets import ProgressWidget +from src.qt.helpers.function_iterator import FunctionIterator +from src.qt.helpers.custom_runnable import CustomRunnable +from src.qt.widgets.progress import ProgressWidget # Only import for type checking/autocompletion, will not be imported at runtime. if typing.TYPE_CHECKING: diff --git a/tagstudio/src/qt/modals/relink_unlinked.py b/tagstudio/src/qt/modals/relink_unlinked.py index dbeb4053..1adffaf1 100644 --- a/tagstudio/src/qt/modals/relink_unlinked.py +++ b/tagstudio/src/qt/modals/relink_unlinked.py @@ -7,8 +7,9 @@ import typing from PySide6.QtCore import QObject, Signal, QThreadPool from src.core.library import Library -from src.qt.helpers import FunctionIterator, CustomRunnable -from src.qt.widgets import ProgressWidget +from src.qt.helpers.function_iterator import FunctionIterator +from src.qt.helpers.custom_runnable import CustomRunnable +from src.qt.widgets.progress import ProgressWidget # Only import for type checking/autocompletion, will not be imported at runtime. if typing.TYPE_CHECKING: diff --git a/tagstudio/src/qt/modals/tag_database.py b/tagstudio/src/qt/modals/tag_database.py index a276a1fa..6101b737 100644 --- a/tagstudio/src/qt/modals/tag_database.py +++ b/tagstudio/src/qt/modals/tag_database.py @@ -13,8 +13,9 @@ from PySide6.QtWidgets import ( ) from src.core.library import Library -from src.qt.widgets import PanelWidget, PanelModal, TagWidget -from src.qt.modals import BuildTagPanel +from src.qt.widgets.panel import PanelWidget, PanelModal +from src.qt.widgets.tag import TagWidget +from src.qt.modals.build_tag import BuildTagPanel class TagDatabasePanel(PanelWidget): diff --git a/tagstudio/src/qt/modals/tag_search.py b/tagstudio/src/qt/modals/tag_search.py index f462e077..93116f21 100644 --- a/tagstudio/src/qt/modals/tag_search.py +++ b/tagstudio/src/qt/modals/tag_search.py @@ -19,7 +19,8 @@ from PySide6.QtWidgets import ( from src.core.library import Library from src.core.palette import ColorType, get_tag_color -from src.qt.widgets import PanelWidget, TagWidget +from src.qt.widgets.panel import PanelWidget +from src.qt.widgets.tag import TagWidget ERROR = f"[ERROR]" diff --git a/tagstudio/src/qt/ts_qt.py b/tagstudio/src/qt/ts_qt.py index 8e2dda26..d53b6e2f 100644 --- a/tagstudio/src/qt/ts_qt.py +++ b/tagstudio/src/qt/ts_qt.py @@ -74,24 +74,20 @@ from src.core.ts_core import ( from src.core.utils.web import strip_web_protocol from src.qt.flowlayout import FlowLayout from src.qt.main_window import Ui_MainWindow -from src.qt.helpers import FunctionIterator, CustomRunnable -from src.qt.widgets import ( - CollageIconRenderer, - ThumbRenderer, - PanelModal, - ProgressWidget, - PreviewPanel, - ItemThumb, -) -from src.qt.modals import ( - BuildTagPanel, - TagDatabasePanel, - FileExtensionModal, - FixUnlinkedEntriesModal, - FixDupeFilesModal, - FoldersToTagsModal, -) - +from src.qt.helpers.function_iterator import FunctionIterator +from src.qt.helpers.custom_runnable import CustomRunnable +from src.qt.widgets.collage_icon import CollageIconRenderer +from src.qt.widgets.panel import PanelModal +from src.qt.widgets.thumb_renderer import ThumbRenderer +from src.qt.widgets.progress import ProgressWidget +from src.qt.widgets.preview_panel import PreviewPanel +from src.qt.widgets.item_thumb import ItemThumb +from src.qt.modals.build_tag import BuildTagPanel +from src.qt.modals.tag_database import TagDatabasePanel +from src.qt.modals.file_extension import FileExtensionModal +from src.qt.modals.fix_unlinked import FixUnlinkedEntriesModal +from src.qt.modals.fix_dupes import FixDupeFilesModal +from src.qt.modals.folders_to_tags import FoldersToTagsModal import src.qt.resources_rc # SIGQUIT is not defined on Windows diff --git a/tagstudio/src/qt/widgets/__init__.py b/tagstudio/src/qt/widgets/__init__.py deleted file mode 100644 index 70bc7e0e..00000000 --- a/tagstudio/src/qt/widgets/__init__.py +++ /dev/null @@ -1,13 +0,0 @@ -from .fields import FieldContainer, FieldWidget -from .collage_icon import CollageIconRenderer -from .thumb_button import ThumbButton -from .thumb_renderer import ThumbRenderer -from .panel import PanelWidget, PanelModal -from .text_box_edit import EditTextBox -from .text_line_edit import EditTextLine -from .progress import ProgressWidget -from .tag import TagWidget -from .tag_box import TagBoxWidget -from .text import TextWidget -from .item_thumb import ItemThumb -from .preview_panel import PreviewPanel diff --git a/tagstudio/src/qt/widgets/item_thumb.py b/tagstudio/src/qt/widgets/item_thumb.py index 0f654281..05567acb 100644 --- a/tagstudio/src/qt/widgets/item_thumb.py +++ b/tagstudio/src/qt/widgets/item_thumb.py @@ -26,11 +26,12 @@ from PySide6.QtWidgets import ( from src.core.library import ItemType, Library, Entry from src.core.ts_core import AUDIO_TYPES, VIDEO_TYPES, IMAGE_TYPES from src.qt.flowlayout import FlowWidget -from src.qt.helpers import FileOpenerHelper -from src.qt.widgets import ThumbRenderer, ThumbButton +from src.qt.helpers.file_opener import FileOpenerHelper +from src.qt.widgets.thumb_renderer import ThumbRenderer +from src.qt.widgets.thumb_button import ThumbButton if typing.TYPE_CHECKING: - from src.qt.widgets import PreviewPanel + from src.qt.widgets.preview_panel import PreviewPanel ERROR = f"[ERROR]" WARNING = f"[WARNING]" diff --git a/tagstudio/src/qt/widgets/preview_panel.py b/tagstudio/src/qt/widgets/preview_panel.py index da71eb25..a4b2eb7d 100644 --- a/tagstudio/src/qt/widgets/preview_panel.py +++ b/tagstudio/src/qt/widgets/preview_panel.py @@ -29,18 +29,16 @@ from humanfriendly import format_size from src.core.library import Entry, ItemType, Library from src.core.ts_core import VIDEO_TYPES, IMAGE_TYPES -from src.qt.helpers import FileOpenerLabel, FileOpenerHelper, open_file -from src.qt.modals import AddFieldModal -from src.qt.widgets import ( - ThumbRenderer, - FieldContainer, - TagBoxWidget, - TextWidget, - PanelModal, - EditTextBox, - EditTextLine, - ItemThumb, -) +from src.qt.helpers.file_opener import FileOpenerLabel, FileOpenerHelper, open_file +from src.qt.modals.add_field import AddFieldModal +from src.qt.widgets.thumb_renderer import ThumbRenderer +from src.qt.widgets.fields import FieldContainer +from src.qt.widgets.tag_box import TagBoxWidget +from src.qt.widgets.text import TextWidget +from src.qt.widgets.panel import PanelModal +from src.qt.widgets.text_box_edit import EditTextBox +from src.qt.widgets.text_line_edit import EditTextLine +from src.qt.widgets.item_thumb import ItemThumb # Only import for type checking/autocompletion, will not be imported at runtime. if typing.TYPE_CHECKING: diff --git a/tagstudio/src/qt/widgets/tag_box.py b/tagstudio/src/qt/widgets/tag_box.py index 86fc25b0..daa72dd9 100644 --- a/tagstudio/src/qt/widgets/tag_box.py +++ b/tagstudio/src/qt/widgets/tag_box.py @@ -12,8 +12,11 @@ from PySide6.QtWidgets import QPushButton from src.core.library import Library, Tag from src.qt.flowlayout import FlowLayout -from src.qt.widgets import FieldWidget, TagWidget, PanelModal -from src.qt.modals import BuildTagPanel, TagSearchPanel +from src.qt.widgets.fields import FieldWidget +from src.qt.widgets.tag import TagWidget +from src.qt.widgets.panel import PanelModal +from src.qt.modals.build_tag import BuildTagPanel +from src.qt.modals.tag_search import TagSearchPanel # Only import for type checking/autocompletion, will not be imported at runtime. if typing.TYPE_CHECKING: diff --git a/tagstudio/src/qt/widgets/text.py b/tagstudio/src/qt/widgets/text.py index 12cb883f..49c680c9 100644 --- a/tagstudio/src/qt/widgets/text.py +++ b/tagstudio/src/qt/widgets/text.py @@ -5,7 +5,7 @@ from PySide6.QtCore import Qt from PySide6.QtWidgets import QHBoxLayout, QLabel -from src.qt.widgets import FieldWidget +from src.qt.widgets.fields import FieldWidget class TextWidget(FieldWidget): diff --git a/tagstudio/src/qt/widgets/text_box_edit.py b/tagstudio/src/qt/widgets/text_box_edit.py index cb952088..d35304f9 100644 --- a/tagstudio/src/qt/widgets/text_box_edit.py +++ b/tagstudio/src/qt/widgets/text_box_edit.py @@ -5,7 +5,7 @@ from PySide6.QtWidgets import QVBoxLayout, QPlainTextEdit -from src.qt.widgets import PanelWidget +from src.qt.widgets.panel import PanelWidget class EditTextBox(PanelWidget): diff --git a/tagstudio/src/qt/widgets/text_line_edit.py b/tagstudio/src/qt/widgets/text_line_edit.py index 971f7746..7185f024 100644 --- a/tagstudio/src/qt/widgets/text_line_edit.py +++ b/tagstudio/src/qt/widgets/text_line_edit.py @@ -5,7 +5,7 @@ from typing import Callable from PySide6.QtWidgets import QVBoxLayout, QLineEdit -from src.qt.widgets import PanelWidget +from src.qt.widgets.panel import PanelWidget class EditTextLine(PanelWidget): diff --git a/tagstudio/tests/__init__.py b/tagstudio/tests/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/tagstudio/tests/core/__init__.py b/tagstudio/tests/core/__init__.py deleted file mode 100644 index e69de29b..00000000