The music player of today! :city_sunrise:
This report summarizes scanner evidence for Taiko2k/Tauon, a Python project with 2,898 GitHub stars. SynthScan examined 49,938 lines of code across 109 source files, recording 541 pattern matches distributed across 13 syntactic categories. The legacy adjusted pattern signal is 14.0 (Moderate pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Can maintainers explain intent, assumptions, and trade-offs? 213 finding(s).
Are imports declared and package/API names verified? 55 finding(s).
Are wrappers, guards, and repeated structures necessary? 317 finding(s).
Which changes need focused human review? 541 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 541 distinct pattern matches across 13 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/i18n/compile_translations.py | 46 | except Exception: | CODE |
| LOW | src/tauon/__main__.py | 204 | except Exception: | CODE |
| LOW | src/tauon/__main__.py | 403 | except Exception: | CODE |
| LOW | src/tauon/__main__.py | 646 | except Exception as e: | CODE |
| LOW | src/tauon/t_modules/t_guitar_chords.py | 206 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_guitar_chords.py | 215 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_guitar_chords.py | 238 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_guitar_chords.py | 247 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_themeload.py | 176 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_tagedit.py | 1686 | except Exception as error: | CODE |
| LOW | src/tauon/t_modules/t_art_anim.py | 58 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_art_anim.py | 81 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_wayland_blur.py | 275 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_macos_menubar.py | 378 | except Exception: | CODE |
| MEDIUM | src/tauon/t_modules/t_macos_menubar.py | 373 | def refresh_states(self) -> None: | CODE |
| LOW | src/tauon/t_modules/t_db_migrate.py | 270 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_tagedit_ui.py | 205 | except Exception as failure: | CODE |
| LOW | src/tauon/t_modules/t_tagedit_ui.py | 229 | except Exception as failure: | CODE |
| LOW | src/tauon/t_modules/t_tagedit_ui.py | 389 | except Exception as error: | CODE |
| LOW | src/tauon/t_modules/t_tagedit_ui.py | 400 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_tagedit_ui.py | 438 | except Exception as error: | CODE |
| LOW | src/tauon/t_modules/t_tagedit_ui.py | 479 | except Exception as error: | CODE |
| LOW | src/tauon/t_modules/t_tagedit_ui.py | 628 | except Exception as error: | CODE |
| LOW | src/tauon/t_modules/t_tagedit_ui.py | 744 | except Exception as error: | CODE |
| LOW | src/tauon/t_modules/t_tagedit_ui.py | 767 | except Exception as error: | CODE |
| LOW | src/tauon/t_modules/t_tagedit_ui.py | 831 | except Exception as error: | CODE |
| LOW | src/tauon/t_modules/t_tagedit_ui.py | 960 | except Exception as error: | CODE |
| LOW | src/tauon/t_modules/t_tagedit_ui.py | 1227 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_tagedit_ui.py | 1261 | except Exception as error: | CODE |
| MEDIUM | src/tauon/t_modules/t_tagedit_ui.py | 383 | def remove_artwork(self) -> None: | CODE |
| MEDIUM | src/tauon/t_modules/t_tagedit_ui.py | 741 | def save() -> None: | CODE |
| LOW | src/tauon/t_modules/t_config.py | 177 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_litterbox.py | 75 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_litterbox.py | 88 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_litterbox.py | 92 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_litterbox.py | 105 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_litterbox.py | 161 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_litterbox.py | 177 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_litterbox.py | 204 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_litterbox.py | 287 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_litterbox.py | 302 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_litterbox.py | 321 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_litterbox.py | 328 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_litterbox.py | 341 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_litterbox.py | 354 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_litterbox.py | 371 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_custom.py | 4469 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_custom.py | 4492 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_macos_blur.py | 143 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_dbus.py | 144 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_dbus.py | 151 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_dbus.py | 174 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_dbus.py | 344 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_dbus.py | 444 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_dbus.py | 467 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_lyrics.py | 76 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_lyrics.py | 87 | except Exception: | CODE |
| LOW | src/tauon/t_modules/t_lyrics.py | 262 | except Exception: | CODE |
| LOW⚡ | src/tauon/t_modules/t_stream.py | 152 | except Exception: | CODE |
| LOW⚡ | src/tauon/t_modules/t_stream.py | 159 | except Exception: | CODE |
| 136 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tools/i18n/update_translations.py | 25 | except (OSError, subprocess.CalledProcessError): | CODE |
| HIGH | src/tauon/t_modules/t_tagedit.py | 306 | except APENoHeaderError: | CODE |
| HIGH | src/tauon/t_modules/t_musicbrainz_lookup.py | 429 | except OSError: | CODE |
| HIGH | src/tauon/t_modules/t_litterbox.py | 328 | except Exception: | CODE |
| HIGH | src/tauon/t_modules/t_nowplaying_macos.py | 143 | except Exception: | CODE |
| HIGH | src/tauon/t_modules/t_nowplaying_macos.py | 147 | except Exception: | CODE |
| HIGH | src/tauon/t_modules/t_nowplaying_macos.py | 151 | except Exception: | CODE |
| HIGH | src/tauon/t_modules/t_subsonic.py | 551 | except UnicodeDecodeError: | CODE |
| HIGH | src/tauon/t_modules/t_webserve.py | 450 | except (BrokenPipeError, ConnectionResetError): | CODE |
| HIGH | src/tauon/t_modules/t_webserve.py | 700 | except (BrokenPipeError, ConnectionResetError): | CODE |
| HIGH | src/tauon/t_modules/t_phazor.py | 202 | except (OSError, ValueError): | CODE |
| HIGH | src/tauon/t_modules/t_phazor.py | 422 | except OSError: | CODE |
| HIGH | src/tauon/t_modules/t_phazor.py | 473 | except OSError: | CODE |
| HIGH | src/tauon/t_modules/t_discord.py | 211 | except Exception: | CODE |
| HIGH | src/tauon/t_modules/t_discord.py | 611 | except Exception: | CODE |
| HIGH | src/tauon/t_modules/t_discord.py | 119 | except Exception: | CODE |
| HIGH | src/tauon/t_modules/t_discord.py | 231 | except Exception: | CODE |
| HIGH | src/tauon/t_modules/t_discord.py | 235 | except Exception: | CODE |
| HIGH | src/tauon/t_modules/t_discord.py | 125 | except StopIteration: | CODE |
| HIGH | src/tauon/t_modules/t_discord.py | 223 | except Exception: | CODE |
| HIGH | src/tauon/t_modules/t_discord.py | 301 | except Exception: | CODE |
| HIGH | src/tauon/t_modules/t_discord.py | 580 | except Exception: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/i18n/update_translations.py | 51 | CODE | |
| LOW | src/tauon/t_modules/t_guitar_chords.py | 119 | CODE | |
| LOW | src/tauon/t_modules/t_guitar_chords.py | 300 | CODE | |
| LOW | src/tauon/t_modules/t_guitar_chords.py | 359 | CODE | |
| LOW | src/tauon/t_modules/t_themeload.py | 147 | CODE | |
| LOW | src/tauon/t_modules/t_themeload.py | 232 | CODE | |
| LOW | src/tauon/t_modules/t_tagedit.py | 296 | CODE | |
| LOW | src/tauon/t_modules/t_tagedit.py | 345 | CODE | |
| LOW | src/tauon/t_modules/t_tagedit.py | 381 | CODE | |
| LOW | src/tauon/t_modules/t_tagedit.py | 451 | CODE | |
| LOW | src/tauon/t_modules/t_tagedit.py | 586 | CODE | |
| LOW | src/tauon/t_modules/t_tagedit.py | 655 | CODE | |
| LOW | src/tauon/t_modules/t_tagedit.py | 766 | CODE | |
| LOW | src/tauon/t_modules/t_tagedit.py | 976 | CODE | |
| LOW | src/tauon/t_modules/t_tagedit.py | 1087 | CODE | |
| LOW | src/tauon/t_modules/t_tagedit.py | 1163 | CODE | |
| LOW | src/tauon/t_modules/t_tagedit.py | 1555 | CODE | |
| LOW | src/tauon/t_modules/t_tagedit.py | 1569 | CODE | |
| LOW | src/tauon/t_modules/t_tagedit.py | 1603 | CODE | |
| LOW | src/tauon/t_modules/t_tagedit.py | 1647 | CODE | |
| LOW | src/tauon/t_modules/t_tagedit.py | 1177 | CODE | |
| LOW | src/tauon/t_modules/t_db_migrate.py | 48 | CODE | |
| LOW | src/tauon/t_modules/t_tagedit_ui.py | 443 | CODE | |
| LOW | src/tauon/t_modules/t_tagedit_ui.py | 502 | CODE | |
| LOW | src/tauon/t_modules/t_tagedit_ui.py | 550 | CODE | |
| LOW | src/tauon/t_modules/t_tagedit_ui.py | 2065 | CODE | |
| LOW | src/tauon/t_modules/t_chromaprint.py | 34 | CODE | |
| LOW | src/tauon/t_modules/t_config.py | 60 | CODE | |
| LOW | src/tauon/t_modules/t_musicbrainz_lookup.py | 377 | CODE | |
| LOW | src/tauon/t_modules/t_musicbrainz_lookup.py | 553 | CODE | |
| LOW | src/tauon/t_modules/t_musicbrainz_lookup.py | 624 | CODE | |
| LOW | src/tauon/t_modules/t_musicbrainz_lookup.py | 680 | CODE | |
| LOW | src/tauon/t_modules/t_custom.py | 173 | CODE | |
| LOW | src/tauon/t_modules/t_custom.py | 504 | CODE | |
| LOW | src/tauon/t_modules/t_custom.py | 657 | CODE | |
| LOW | src/tauon/t_modules/t_custom.py | 1894 | CODE | |
| LOW | src/tauon/t_modules/t_custom.py | 3028 | CODE | |
| LOW | src/tauon/t_modules/t_custom.py | 3418 | CODE | |
| LOW | src/tauon/t_modules/t_custom.py | 4978 | CODE | |
| LOW | src/tauon/t_modules/t_custom.py | 5196 | CODE | |
| LOW | src/tauon/t_modules/t_custom.py | 5290 | CODE | |
| LOW | src/tauon/t_modules/t_dbus.py | 93 | CODE | |
| LOW | src/tauon/t_modules/t_dbus.py | 237 | CODE | |
| LOW | src/tauon/t_modules/t_dbus.py | 347 | CODE | |
| LOW | src/tauon/t_modules/t_dbus.py | 353 | CODE | |
| LOW | src/tauon/t_modules/t_dbus.py | 407 | CODE | |
| LOW | src/tauon/t_modules/t_cast_audio.py | 34 | CODE | |
| LOW | src/tauon/t_modules/t_asf.py | 76 | CODE | |
| LOW | src/tauon/t_modules/t_stream.py | 179 | CODE | |
| LOW | src/tauon/t_modules/t_stream.py | 230 | CODE | |
| LOW | src/tauon/t_modules/t_stream.py | 287 | CODE | |
| LOW | src/tauon/t_modules/t_stream.py | 350 | CODE | |
| LOW | src/tauon/t_modules/t_stream.py | 477 | CODE | |
| LOW | src/tauon/t_modules/t_stream.py | 723 | CODE | |
| LOW | src/tauon/t_modules/t_stream.py | 387 | CODE | |
| LOW | src/tauon/t_modules/t_stream.py | 547 | CODE | |
| LOW | src/tauon/t_modules/t_activity.py | 225 | CODE | |
| LOW | src/tauon/t_modules/t_nowplaying_macos.py | 56 | CODE | |
| LOW | src/tauon/t_modules/t_subsonic.py | 152 | CODE | |
| LOW | src/tauon/t_modules/t_subsonic.py | 225 | CODE | |
| 42 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | extra/generate_dmg_background.py | 12 | CODE | |
| LOW | src/tauon/tests/test_theme_editor_unsaved.py | 9 | CODE | |
| LOW | src/tauon/tests/test_set_volume.py | 17 | CODE | |
| LOW | src/tauon/t_modules/t_guitar_chords.py | 8 | CODE | |
| LOW | src/tauon/t_modules/t_themeload.py | 19 | CODE | |
| LOW | src/tauon/t_modules/t_tagedit.py | 8 | CODE | |
| LOW | src/tauon/t_modules/t_art_theme_duotone.py | 17 | CODE | |
| LOW | src/tauon/t_modules/t_art_anim.py | 5 | CODE | |
| LOW | src/tauon/t_modules/t_wayland_blur.py | 19 | CODE | |
| LOW | src/tauon/t_modules/t_replaygain.py | 3 | CODE | |
| LOW | src/tauon/t_modules/t_macos_menubar.py | 1 | CODE | |
| LOW | src/tauon/t_modules/t_db_migrate.py | 3 | CODE | |
| LOW | src/tauon/t_modules/t_tagedit_ui.py | 5 | CODE | |
| LOW | src/tauon/t_modules/t_chromaprint.py | 5 | CODE | |
| LOW | src/tauon/t_modules/t_config.py | 23 | CODE | |
| LOW | src/tauon/t_modules/t_musicbrainz_lookup.py | 5 | CODE | |
| LOW | src/tauon/t_modules/t_litterbox.py | 15 | CODE | |
| LOW | src/tauon/t_modules/t_custom.py | 31 | CODE | |
| LOW | src/tauon/t_modules/t_window.py | 28 | CODE | |
| LOW | src/tauon/t_modules/t_macos_blur.py | 19 | CODE | |
| LOW | src/tauon/t_modules/t_prefs.py | 1 | CODE | |
| LOW | src/tauon/t_modules/t_dbus.py | 20 | CODE | |
| LOW | src/tauon/t_modules/t_dbus.py | 23 | CODE | |
| LOW | src/tauon/t_modules/t_tag_textbox.py | 5 | CODE | |
| LOW | src/tauon/t_modules/t_cast_audio.py | 2 | CODE | |
| LOW | src/tauon/t_modules/t_asf.py | 8 | CODE | |
| LOW | src/tauon/t_modules/t_stream.py | 19 | CODE | |
| LOW | src/tauon/t_modules/t_stream.py | 28 | CODE | |
| LOW | src/tauon/t_modules/t_activity.py | 5 | CODE | |
| LOW | src/tauon/t_modules/t_nowplaying_macos.py | 1 | CODE | |
| LOW | src/tauon/t_modules/t_art_theme.py | 5 | CODE | |
| LOW | src/tauon/t_modules/t_subsonic.py | 19 | CODE | |
| LOW | src/tauon/t_modules/t_webserve.py | 19 | CODE | |
| LOW | src/tauon/t_modules/t_db_state.py | 4 | CODE | |
| LOW | src/tauon/t_modules/t_search.py | 18 | CODE | |
| LOW | src/tauon/t_modules/t_menu_disc.py | 20 | CODE | |
| LOW | src/tauon/t_modules/t_lookup_cache.py | 5 | CODE | |
| LOW | src/tauon/t_modules/t_tidal.py | 3 | CODE | |
| LOW | src/tauon/t_modules/t_bootstrap.py | 1 | CODE | |
| LOW | src/tauon/t_modules/t_extra.py | 22 | CODE | |
| LOW | src/tauon/t_modules/t_chrome.py | 1 | CODE | |
| LOW | src/tauon/t_modules/t_playlist_folders.py | 12 | CODE | |
| LOW | src/tauon/t_modules/t_tagscan.py | 25 | CODE | |
| LOW | src/tauon/t_modules/t_phazor.py | 20 | CODE | |
| LOW | src/tauon/t_modules/t_phazor.py | 48 | CODE | |
| LOW | src/tauon/t_modules/t_phazor.py | 54 | CODE | |
| LOW | src/tauon/t_modules/t_phazor.py | 55 | CODE | |
| LOW | src/tauon/t_modules/t_topchart.py | 19 | CODE | |
| LOW | src/tauon/t_modules/t_discord.py | 1 | CODE | |
| LOW | src/tauon/t_modules/t_jellyfin.py | 19 | CODE | |
| LOW | src/tauon/t_modules/t_jellyfin.py | 39 | CODE | |
| LOW | src/tauon/t_modules/t_draw.py | 19 | CODE | |
| LOW | src/tauon/t_modules/t_draw.py | 40 | CODE | |
| LOW | src/tauon/t_modules/t_windows_blur.py | 23 | CODE | |
| LOW | src/tauon/t_modules/t_room.py | 23 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/i18n/update_translations.py | 39 | def homebrew_pygettext_candidates() -> list[Path]: | CODE |
| LOW | src/tauon/tests/test_get_colour_from_line.py | 10 | def test_get_colour_from_line() -> None: | CODE |
| LOW⚡ | src/tauon/tests/test_theme_editor_unsaved.py | 51 | def active_theme_is_user_editable(self) -> bool: | CODE |
| LOW⚡ | src/tauon/tests/test_theme_editor_unsaved.py | 57 | def apply_theme_preview_colours(self, source: t_main.ColoursClass) -> None: | CODE |
| LOW⚡ | src/tauon/tests/test_theme_editor_unsaved.py | 60 | def sync_theme_editor_controls_from_current_colour(self) -> None: | CODE |
| LOW⚡ | src/tauon/tests/test_theme_editor_unsaved.py | 63 | def destroy_theme_editor_gradient_textures(self) -> None: | CODE |
| LOW | src/tauon/tests/test_theme_editor_unsaved.py | 77 | def test_reopening_keeps_unsaved_changes() -> None: | CODE |
| LOW | src/tauon/tests/test_theme_editor_unsaved.py | 89 | def test_reopening_after_theme_reload_restores_draft() -> None: | CODE |
| LOW | src/tauon/tests/test_theme_editor_unsaved.py | 101 | def test_other_theme_starts_fresh() -> None: | CODE |
| LOW | src/tauon/tests/test_theme_editor_unsaved.py | 112 | def test_closing_without_changes_clears_draft() -> None: | CODE |
| LOW | src/tauon/tests/test_set_volume.py | 52 | def test_queues_command_when_player_is_free(shots: list) -> None: | CODE |
| LOW | src/tauon/tests/test_set_volume.py | 60 | def test_pending_volume_command_is_left_to_carry_the_new_value(shots: list) -> None: | CODE |
| LOW | src/tauon/tests/test_set_volume.py | 73 | def test_other_pending_command_still_defers(shots: list) -> None: | CODE |
| LOW | src/tauon/tests/test_set_volume.py | 85 | def test_notify_refreshes_now_playing(shots: list) -> None: | CODE |
| LOW | src/tauon/tests/test_lyrics.py | 11 | def test_genius_return_url_normalizes_input() -> None: | CODE |
| LOW | src/tauon/tests/test_lyrics.py | 58 | def test_lyric_search_prioritizes_synced_sources_and_apis(monkeypatch: pytest.MonkeyPatch) -> None: | CODE |
| LOW | src/tauon/tests/test_lyrics.py | 90 | def test_lyric_search_uses_api_before_unneeded_scraper(monkeypatch: pytest.MonkeyPatch) -> None: | CODE |
| LOW | src/tauon/tests/test_lyrics.py | 109 | def test_will_overwrite_synced_ignores_network_track(monkeypatch: pytest.MonkeyPatch) -> None: | CODE |
| LOW | src/tauon/tests/test_get_year_from_string.py | 4 | def test_get_year_from_string() -> None: | CODE |
| LOW | src/tauon/tests/test_showcase_radio_visualizer.py | 10 | def test_showcase_visualizer_renders_radio_without_music_queue( | CODE |
| LOW | src/tauon/t_modules/t_art_theme_duotone.py | 351 | def generate_duotone_art_theme(image: Image.Image, summary: ArtSummary | None = None) -> ArtTheme: | CODE |
| LOW | src/tauon/t_modules/t_macos_menubar.py | 305 | def _move_window_menu_before_help( | CODE |
| LOW⚡ | src/tauon/t_modules/t_macos_menubar.py | 463 | def import_folder_to_current_playlist(self) -> None: | CODE |
| LOW⚡ | src/tauon/t_modules/t_macos_menubar.py | 550 | def set_shuffle_lockdown_albums(self) -> None: | CODE |
| LOW | src/tauon/t_modules/t_custom.py | 4296 | def _template_tracks_gallery_compact(self) -> Node: | CODE |
| LOW | src/tauon/t_modules/t_custom.py | 4836 | def act_toggle_stack_resizable(self, stack: Stack) -> None: | CODE |
| LOW | src/tauon/t_modules/t_art_theme.py | 179 | def generate_structural_art_theme(image: Image.Image) -> ArtTheme: | CODE |
| LOW | src/tauon/t_modules/t_art_theme.py | 421 | def generate_routed_art_theme(image: Image.Image) -> ArtTheme: | CODE |
| LOW | src/tauon/t_modules/t_art_theme.py | 529 | def generate_original_art_theme(image: Image.Image) -> ArtTheme | None: | CODE |
| LOW⚡ | src/tauon/t_modules/t_subsonic.py | 405 | def _timestamp_from_milliseconds(self, milliseconds: int) -> str: | CODE |
| LOW⚡ | src/tauon/t_modules/t_subsonic.py | 412 | def _plain_from_structured_lyrics(self, structured_lyrics: dict) -> str: | CODE |
| LOW⚡ | src/tauon/t_modules/t_subsonic.py | 422 | def _lrc_from_structured_lyrics(self, structured_lyrics: dict) -> str: | CODE |
| LOW | src/tauon/t_modules/t_subsonic.py | 442 | def _lyrics_from_structured_response(self, response: dict | None) -> tuple[str, str]: | CODE |
| LOW | src/tauon/t_modules/t_subsonic.py | 472 | def _lyrics_from_legacy_response(self, response: dict | None) -> tuple[str, str]: | CODE |
| LOW | src/tauon/t_modules/t_db_state.py | 94 | def backup_state_before_repair(user_directory: Path) -> None: | CODE |
| LOW | src/tauon/t_modules/t_db_state.py | 115 | def validate_and_repair_database(pctl: PlayerCtl) -> int: | CODE |
| LOW | src/tauon/t_modules/t_locale.py | 44 | def get_translation_languages(ui_lang: str) -> list[str] | None: | CODE |
| LOW | src/tauon/t_modules/t_extra.py | 582 | def get_filesize_string_rounded(file_bytes: int) -> str: | CODE |
| LOW | src/tauon/t_modules/t_extra.py | 620 | def get_samplerate_string_short(samplerate: int, bit_depth: int) -> str: | CODE |
| LOW | src/tauon/t_modules/t_tagscan.py | 204 | def read_wavpack_dsd_multiplier(file: BufferedReader, block_end: int) -> int | None: | CODE |
| LOW⚡ | src/tauon/t_modules/t_phazor.py | 1492 | def set_native_output_compressor() -> None: | CODE |
| LOW | src/tauon/t_modules/t_phazor.py | 1096 | def pause_when_device_unavailable() -> None: | CODE |
| LOW | src/tauon/t_modules/t_phazor.py | 1101 | def equalizer_compressor_wanted() -> bool: | CODE |
| LOW | src/tauon/t_modules/t_discord.py | 90 | def resolve_lastfm_button_url_async(main, artist: Optional[str], title: Optional[str]) -> Optional[str]: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | src/tauon/t_modules/t_themeload.py | 5 | # This file is part of Tauon Music Box. | COMMENT |
| MEDIUM | src/tauon/t_modules/t_config.py | 8 | # This file is part of Tauon Music Box. | COMMENT |
| MEDIUM | src/tauon/t_modules/t_dbus.py | 5 | # This file is part of Tauon Music Box. | COMMENT |
| MEDIUM | src/tauon/t_modules/t_lyrics.py | 12 | # This file is part of Tauon Music Box. | COMMENT |
| MEDIUM | src/tauon/t_modules/t_stream.py | 5 | # This file is part of Tauon Music Box. | COMMENT |
| MEDIUM | src/tauon/t_modules/t_subsonic.py | 5 | # This file is part of Tauon Music Box. | COMMENT |
| MEDIUM | src/tauon/t_modules/t_webserve.py | 5 | # This file is part of Tauon Music Box. | COMMENT |
| MEDIUM | src/tauon/t_modules/t_search.py | 4 | # This file is part of Tauon Music Box. | COMMENT |
| MEDIUM | src/tauon/t_modules/t_extra.py | 8 | # This file is part of Tauon Music Box. | COMMENT |
| MEDIUM | src/tauon/t_modules/t_svgout.py | 5 | # This file is part of Tauon Music Box. | COMMENT |
| MEDIUM | src/tauon/t_modules/t_tagscan.py | 10 | # This file is part of Tauon Music Box. | COMMENT |
| MEDIUM | src/tauon/t_modules/t_phazor.py | 5 | # This file is part of Tauon Music Box. | COMMENT |
| MEDIUM | src/tauon/t_modules/t_phazor.py | 1038 | # Define the library name and extensions in priority order | COMMENT |
| MEDIUM | src/tauon/t_modules/t_topchart.py | 5 | # This file is part of Tauon Music Box. | COMMENT |
| MEDIUM | src/tauon/t_modules/t_jellyfin.py | 5 | # This file is part of Tauon Music Box. | COMMENT |
| MEDIUM | src/tauon/t_modules/t_draw.py | 5 | # This file is part of Tauon Music Box. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | src/tauon/__main__.py | 165 | def set_sdl_app_metadata() -> None: | CODE |
| LOW | src/tauon/t_modules/t_tagedit.py | 655 | def set_main(self, field: str, text: str | list[str]) -> None: | CODE |
| LOW | src/tauon/t_modules/t_tagedit.py | 763 | def set_entry(self, key: str, text: str | list[str]) -> None: | CODE |
| LOW | src/tauon/t_modules/t_tagedit.py | 766 | def _set_native_entry(self, key: str, text: str | list[str]) -> None: | CODE |
| LOW | src/tauon/t_modules/t_tagedit.py | 893 | def _set_asf_entry(self, key: str, text: str, values: list[str]) -> None: | CODE |
| LOW | src/tauon/t_modules/t_tagedit.py | 976 | def set_artwork(self, data: bytes | None, *, picture_type: int | None = None, index: int | None = None) -> None: | CODE |
| LOW⚡ | src/tauon/t_modules/t_macos_menubar.py | 448 | def _set_state(self, key: str, active: bool) -> None: | CODE |
| LOW⚡ | src/tauon/t_modules/t_macos_menubar.py | 453 | def _set_enabled(self, key: str, enabled: bool) -> None: | CODE |
| LOW⚡ | src/tauon/t_modules/t_macos_menubar.py | 458 | def _set_title(self, key: str, title: str) -> None: | CODE |
| LOW⚡ | src/tauon/t_modules/t_macos_menubar.py | 518 | def set_track_shuffle(self) -> None: | CODE |
| LOW⚡ | src/tauon/t_modules/t_macos_menubar.py | 522 | def set_album_shuffle(self) -> None: | CODE |
| LOW⚡ | src/tauon/t_modules/t_macos_menubar.py | 526 | def set_shuffle_off(self) -> None: | CODE |
| LOW⚡ | src/tauon/t_modules/t_macos_menubar.py | 530 | def set_repeat_track(self) -> None: | CODE |
| LOW⚡ | src/tauon/t_modules/t_macos_menubar.py | 534 | def set_repeat_album(self) -> None: | CODE |
| LOW⚡ | src/tauon/t_modules/t_macos_menubar.py | 538 | def set_repeat_off(self) -> None: | CODE |
| LOW⚡ | src/tauon/t_modules/t_macos_menubar.py | 542 | def set_shuffle_lockdown(self) -> None: | CODE |
| LOW⚡ | src/tauon/t_modules/t_macos_menubar.py | 550 | def set_shuffle_lockdown_albums(self) -> None: | CODE |
| LOW | src/tauon/t_modules/t_config.py | 49 | def update_value(self, key: str, value: bool | str | float) -> None: | CODE |
| LOW | src/tauon/t_modules/t_musicbrainz_lookup.py | 372 | def _set_progress(self, fraction: float) -> None: | CODE |
| LOW | src/tauon/t_modules/t_custom.py | 116 | def set_config(self, d: dict) -> None: | CODE |
| LOW | src/tauon/t_modules/t_custom.py | 2616 | def set_config(self, d: dict) -> None: | CODE |
| LOW | src/tauon/t_modules/t_custom.py | 3230 | def set_config(self, d: dict) -> None: | CODE |
| LOW | src/tauon/t_modules/t_dbus.py | 180 | def update_progress(self) -> None: | CODE |
| LOW | src/tauon/t_modules/t_dbus.py | 195 | def update_shuffle(self) -> None: | CODE |
| LOW | src/tauon/t_modules/t_dbus.py | 199 | def update_loop(self) -> None: | CODE |
| LOW | src/tauon/t_modules/t_dbus.py | 388 | def update_play_lock() -> None: | CODE |
| LOW | src/tauon/t_modules/t_tag_textbox.py | 61 | def set_values(self, values: list[str]) -> None: | CODE |
| LOW | src/tauon/t_modules/t_subsonic.py | 957 | def set_favs(d: list[int]) -> None: | CODE |
| LOW | src/tauon/t_modules/t_tagscan.py | 322 | def set_vorbis_label(self, key: str, value: bytes) -> None: | CODE |
| LOW | src/tauon/t_modules/t_tagscan.py | 328 | def set_vorbis_lyrics(self, key: str, value: bytes) -> None: | CODE |
| LOW⚡ | src/tauon/t_modules/t_phazor.py | 1476 | def set_load_net(n: int) -> None: | CODE |
| LOW⚡ | src/tauon/t_modules/t_phazor.py | 1486 | def set_min_buffer(frames: int) -> None: | CODE |
| LOW⚡ | src/tauon/t_modules/t_phazor.py | 1492 | def set_native_output_compressor() -> None: | CODE |
| LOW | src/tauon/t_modules/t_phazor.py | 293 | def set_prefetch(self, track: TrackClass | None) -> None: | CODE |
| LOW | src/tauon/t_modules/t_phazor.py | 1120 | def set_replaygain_status(gain_db: float | None, multiplier: float, source: str = "") -> None: | CODE |
| LOW | src/tauon/t_modules/t_phazor.py | 1194 | def set_config(set_device: bool = False) -> None: | CODE |
| LOW | src/tauon/t_modules/t_discord.py | 198 | def set_status(status: str) -> None: | CODE |
| LOW | src/tauon/t_modules/t_jellyfin.py | 657 | def set_favs(d: dict[TrackClass, bool]) -> None: | CODE |
| LOW | src/tauon/t_modules/t_room.py | 92 | def set_state(self, texture, additive: bool) -> None: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | pyproject.toml | 81 | # ./vcpkg.exe install pthreads:x64-windows | COMMENT |
| LOW | run.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | packaging/android/bootstrap-android-deps.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | .github/workflows/pyright.yaml | 101 | # node-version: '24' | COMMENT |
| LOW | .github/workflows/compile_translations.yaml | 21 | python-version: '3.15' | COMMENT |
| LOW | src/phazor/phazor.c | 1 | // PHAzOR - Audio playback module for Tauon Music Box | COMMENT |
| LOW | src/phazor/phazor.c | 21 | #pragma message("Current __STDC_VERSION__ value: " TOSTRING(__STDC_VERSION__)) | COMMENT |
| LOW | src/phazor/phazor.c | 41 | #ifdef PIPE | COMMENT |
| LOW | src/phazor/phazor.c | 61 | #include <stdio.h> | COMMENT |
| LOW | src/phazor/phazor.c | 81 | #define MA_ENABLE_WASAPI | COMMENT |
| LOW | src/phazor/phazor.c | 1861 | // MP3 related ------------------------------------------------ | COMMENT |
| LOW | src/phazor/phazor.c | 1921 | #endif | COMMENT |
| LOW | src/smtc/TauonSMTC/pch.h | 1 | // pch.h: This is a precompiled header file. | COMMENT |
| LOW | src/smtc/TauonSMTC/dllmain.cpp | 1 | // SMTC module by Taiko2k | COMMENT |
| LOW | src/smtc/TauonSMTC/framework.h | 1 | #pragma once | COMMENT |
| LOW | src/tauon/__main__.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | src/tauon/templates/input.txt | 1 | # Keybinds for Tauon Music Box | COMMENT |
| LOW | src/tauon/t_modules/t_themeload.py | 1 | """Tauon Music Box - Theme reading module""" | COMMENT |
| LOW | src/tauon/t_modules/t_config.py | 1 | """Tauon Music Box - Configuration file module | COMMENT |
| LOW | src/tauon/t_modules/t_custom.py | 4141 | # dragging. One constant so the drag hit-test, the hover fields and the resize | COMMENT |
| LOW | src/tauon/t_modules/t_custom.py | 4181 | self.slot_names: list[str | None] = [None] | COMMENT |
| LOW | src/tauon/t_modules/t_custom.py | 6241 | saved_w = tauon.window_size[0] | COMMENT |
| LOW | src/tauon/t_modules/t_window.py | 1 | # Tauon Music Box - secondary window scaffold | COMMENT |
| LOW | src/tauon/t_modules/t_prefs.py | 221 | art_bg_blur = 9 | COMMENT |
| LOW | src/tauon/t_modules/t_dbus.py | 1 | """Tauon Music Box - Module for DBus interaction""" | COMMENT |
| LOW | src/tauon/t_modules/t_dbus.py | 441 | iface.connect_to_signal("PrepareForSleep", PrepareForSleep) | COMMENT |
| LOW | src/tauon/t_modules/t_stream.py | 1 | """Tauon Music Box - URL stream download and encoding module""" | COMMENT |
| LOW | src/tauon/t_modules/t_stream.py | 601 | if tags: | COMMENT |
| LOW | src/tauon/t_modules/t_subsonic.py | 1 | """Tauon Music Box - Subsonic/Airsonic Integration""" | COMMENT |
| LOW | src/tauon/t_modules/t_webserve.py | 1 | """Tauon Music Box - Web interface module""" | COMMENT |
| LOW | src/tauon/t_modules/t_webserve.py | 841 | # elif path.startswith("/api1/stream/"): | COMMENT |
| LOW | src/tauon/t_modules/t_search.py | 1 | """Tauon Music Box - Search an artist by scrape/fetch module""" | COMMENT |
| LOW | src/tauon/t_modules/t_tidal.py | 361 | for track in tracks: | COMMENT |
| LOW | src/tauon/t_modules/t_tidal.py | 381 | # # HiFi+ Quality.hi_res (FLAC MQA) | COMMENT |
| LOW | src/tauon/t_modules/t_tidal.py | 401 | # logging.info("track:{}, (quality:{}, codec:{}, {}bit/{}Hz)".format(track.id, | COMMENT |
| LOW | src/tauon/t_modules/t_tidal.py | 421 | # i = 0 | COMMENT |
| LOW | src/tauon/t_modules/t_tidal.py | 441 | # logging.info(url) | COMMENT |
| LOW | src/tauon/t_modules/t_extra.py | 1 | """Tauon Music Box - Misc Functions Module | COMMENT |
| LOW | src/tauon/t_modules/t_svgout.py | 1 | """Tauon Music Box - SVG Module""" | COMMENT |
| LOW | src/tauon/t_modules/t_tagscan.py | 1 | """Tauon Music Box - Tag Module | COMMENT |
| LOW | src/tauon/t_modules/t_phazor.py | 1 | """Tauon Music Box - Phazor audio backend module""" | COMMENT |
| LOW | src/tauon/t_modules/t_phazor.py | 1641 | pctl.test_progress() | COMMENT |
| LOW | src/tauon/t_modules/t_topchart.py | 1 | """Tauon Music Box - Album chart image generator""" | COMMENT |
| LOW | src/tauon/t_modules/t_jellyfin.py | 1 | """Tauon Music Box - Jellyin client API module""" | COMMENT |
| LOW | src/tauon/t_modules/t_draw.py | 1 | """Tauon Music Box - Basic Drawing and Text Drawing Functions Module""" | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | src/tauon/t_modules/t_custom.py | 79 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | src/tauon/t_modules/t_custom.py | 81 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | src/tauon/t_modules/t_custom.py | 3736 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | src/tauon/t_modules/t_custom.py | 3738 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | src/tauon/t_modules/t_custom.py | 4134 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | src/tauon/t_modules/t_custom.py | 4136 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | src/tauon/t_modules/t_dbus.py | 462 | # ---------- | COMMENT |
| MEDIUM | src/tauon/t_modules/t_menu_disc.py | 84 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | src/tauon/t_modules/t_menu_disc.py | 86 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | src/tauon/t_modules/t_menu_disc.py | 142 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | src/tauon/t_modules/t_menu_disc.py | 144 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | src/tauon/t_modules/t_menu_disc.py | 274 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | src/tauon/t_modules/t_menu_disc.py | 276 | # --------------------------------------------------------------------------- | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | src/tauon/t_modules/t_wayland_blur.py | 0 | apply the wanted blur state; call once per frame, before present | STRING |
| HIGH | src/tauon/t_modules/t_macos_blur.py | 0 | apply the wanted blur state; call once per frame, before present | STRING |
| HIGH | src/tauon/t_modules/t_windows_blur.py | 0 | apply the wanted blur state; call once per frame, before present | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | pyproject.toml | 191 | 'Q003', # avoidable-escaped-quote - It's not that important, we just use escapes, keeping the qu | CODE |
| MEDIUM | src/tauon/t_modules/t_extra.py | 1404 | """A robust FPS counter that handles pauses and provides smooth measurements. | STRING |
| LOW | src/tauon/t_modules/t_phazor.py | 1002 | # all other distros seem to symlink lib64 to lib, so just use lib64 | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .github/workflows/build_and_release.yaml | 653 | # Check if release already exists and get ID | COMMENT |
| LOW | src/tauon/t_modules/t_tagscan.py | 193 | # Check if we have a DSD block and if so use the multiplier or fail | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | src/tauon/t_modules/t_window.py | 1 | # Tauon Music Box - secondary window scaffold | COMMENT |