AI Slop Code RIsk Monitor

kovidgoyal/calibre

The official source code repository for the calibre ebook manager

15.9 Elevated pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for kovidgoyal/calibre, a Python project with 26,116 GitHub stars. SynthScan examined 696,734 lines of code across 1787 source files, recording 7453 pattern matches distributed across 24 syntactic categories. The legacy adjusted pattern signal is 15.9 (Elevated 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.

15.9
Adjusted Signal
15.9
Raw Pattern Score
100%
Time Factor
2026-10-10
Last Push
26.1K
Stars
Python
Language
696.7K
Lines of Code
1.8K
Files
7.5K
Pattern Hits
2026-10-12
Scan Date
0.48
HC Hit Rate

Risk Review · v3

Use each vector to guide manual verification of the underlying findings.

Cognitive Ownership Risk 21.7/100 · LOW

Can maintainers explain intent, assumptions, and trade-offs? 3512 finding(s).

Hallucinated Dependency & Supply Chain Risk 8.7/100 · LOW

Are imports declared and package/API names verified? 492 finding(s).

Agent Over-Engineering Ratio 43.1/100 · MEDIUM

Are wrappers, guards, and repeated structures necessary? 4995 finding(s).

PR Review Velocity Impact 59.9/100 · HIGH

Which changes need focused human review? 7453 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

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.

Severity Breakdown

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.

CRITICAL 20HIGH 831MEDIUM 464LOW 6138

Directory Score Breakdown

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.

Pattern Findings

The scanner identified 7453 distinct pattern matches across 24 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.

Empty Error Handlers627 hits · 3135 pts
SeverityFileLineSnippetContext
HIGHsetup/build.py436except FileNotFoundError:CODE
HIGHsetup/linux-installer.py756except Exception:CODE
HIGHsetup/linux-installer.py766except Exception:CODE
HIGHsetup/linux-installer.py776except Exception:CODE
HIGHsetup/linux-installer.py610except Exception:CODE
HIGHsetup/fmt.py61except FileNotFoundError:CODE
HIGHsetup/plugins_mirror.py118except Exception:CODE
HIGHsetup/plugins_mirror.py350except Exception:CODE
HIGHsetup/plugins_mirror.py338except Exception:CODE
HIGHsetup/polib.py527except KeyError:CODE
HIGHsetup/installers.py95except OSError:CODE
HIGHsetup/publish.py289except OSError:CODE
HIGHmanual/conf.py106except OSError:CODE
HIGH.github/workflows/macos_crash_report.py217except json.decoder.JSONDecodeError:CODE
HIGHsrc/calibre/startup.py226except Exception:CODE
HIGHsrc/calibre/startup.py261except Exception:CODE
HIGHsrc/calibre/ptempfile.py234except Exception:CODE
HIGHsrc/calibre/ptempfile.py36except ValueError:CODE
HIGHsrc/calibre/constants.py435except ImportError:CODE
HIGHsrc/calibre/constants.py410except Exception:CODE
HIGHsrc/calibre/constants.py425except Exception:CODE
HIGHsrc/calibre/test_build.py467except wpd.NoWPD:CODE
HIGHsrc/calibre/debug.py330except Exception:CODE
HIGHsrc/calibre/linux.py89except Exception:CODE
HIGHsrc/calibre/prints.py46except Exception:CODE
HIGHsrc/calibre/ebooks/chardet.py164except UnicodeDecodeError:CODE
HIGHsrc/calibre/ebooks/__init__.py164except Exception:CODE
HIGHsrc/calibre/ebooks/__init__.py169except Exception:CODE
HIGHsrc/calibre/ebooks/html_entities.py2168except KeyError:CODE
HIGHsrc/calibre/ebooks/render_html.py159except Exception:CODE
HIGHsrc/calibre/ebooks/odt/input.py262except Exception:CODE
HIGHsrc/calibre/ebooks/odt/input.py220except ValueError:CODE
HIGHsrc/calibre/ebooks/lrf/meta.py275except Exception:CODE
HIGHsrc/calibre/ebooks/lrf/meta.py281except Exception:CODE
HIGHsrc/calibre/ebooks/lrf/html/convert_from.py1324except ValueError:CODE
HIGHsrc/calibre/ebooks/lrf/html/convert_from.py1493except KeyError:CODE
HIGHsrc/calibre/ebooks/lrf/html/convert_from.py373except Exception:CODE
HIGHsrc/calibre/ebooks/lrf/html/convert_from.py582except KeyError:CODE
HIGHsrc/calibre/ebooks/lrf/html/convert_from.py676except ValueError:CODE
HIGHsrc/calibre/ebooks/lrf/html/convert_from.py1972except Exception:CODE
HIGHsrc/calibre/ebooks/lrf/html/convert_from.py1550except Exception:CODE
HIGHsrc/calibre/ebooks/lrf/html/convert_from.py1607except Exception:CODE
HIGHsrc/calibre/ebooks/lrf/html/table.py92except Exception:CODE
HIGHsrc/calibre/ebooks/lrf/html/table.py79except ValueError:CODE
HIGHsrc/calibre/ebooks/lrf/html/table.py84except ValueError:CODE
HIGHsrc/calibre/ebooks/txt/txtml.py244except Exception:CODE
HIGHsrc/calibre/ebooks/mobi/utils.py563except UnicodeDecodeError:CODE
HIGHsrc/calibre/ebooks/mobi/tweak.py33except Exception:CODE
HIGHsrc/calibre/ebooks/mobi/mobiml.py367except Exception:CODE
HIGHsrc/calibre/ebooks/mobi/mobiml.py596except Exception:CODE
HIGHsrc/calibre/ebooks/mobi/mobiml.py491except Exception:CODE
HIGHsrc/calibre/ebooks/mobi/mobiml.py497except Exception:CODE
HIGHsrc/calibre/ebooks/mobi/reader/mobi8.py495except Exception:CODE
HIGHsrc/calibre/ebooks/mobi/writer8/skeleton.py445except KeyError:CODE
HIGHsrc/calibre/ebooks/mobi/writer8/main.py256except ValueError:CODE
HIGHsrc/calibre/ebooks/mobi/writer2/indexer.py693except KeyError:CODE
HIGHsrc/calibre/ebooks/mobi/debug/mobi6.py766except Exception:CODE
HIGHsrc/calibre/ebooks/mobi/debug/headers.py549except IndexError:CODE
HIGHsrc/calibre/ebooks/mobi/debug/main.py20except Exception:CODE
HIGHsrc/calibre/ebooks/fb2/fb2ml.py178except IndexError:CODE
567 more matches not shown…
Excessive Try-Catch Wrapping2561 hits · 2619 pts
SeverityFileLineSnippetContext
LOWsetup/build.py644 except Exception:STRING
MEDIUMsetup/build.py646 print(f'Error while executing: {cmdline}\n')STRING
LOWsetup/linux-installer.py610 except Exception:STRING
LOW⚡setup/linux-installer.py756 except Exception:STRING
LOW⚡setup/linux-installer.py766 except Exception:STRING
LOW⚡setup/linux-installer.py776 except Exception:STRING
LOWsetup/hosting.py120 except Exception:CODE
LOWsetup/hosting.py163 except Exception:CODE
LOWsetup/upload.py265 except Exception:CODE
LOWsetup/upload.py274 except Exception:CODE
LOWsetup/build_environment.py89 except Exception:CODE
LOWsetup/plugins_mirror.py49except Exception:CODE
LOWsetup/plugins_mirror.py118 except Exception:CODE
LOWsetup/plugins_mirror.py125 except Exception:CODE
LOWsetup/plugins_mirror.py338 except Exception:CODE
LOWsetup/plugins_mirror.py350 except Exception:CODE
LOWsetup/plugins_mirror.py499 except Exception:CODE
LOWsetup/plugins_mirror.py745 except Exception:STRING
MEDIUMsetup/plugins_mirror.py194def load_plugins_index():CODE
LOWsetup/polib.py1508 except Exception:CODE
LOWsetup/__init__.py96 except Exception:CODE
LOWsetup/__init__.py113 except Exception as err:CODE
LOWsetup/win-ci.py26 except Exception as err:CODE
LOWsetup/browser_deps.py26 except Exception as err:CODE
LOWsetup/unix-ci.py33 except Exception as err:CODE
LOWsetup/linux-installer.sh659 except Exception:STRING
LOW⚡setup/linux-installer.sh805 except Exception:STRING
LOW⚡setup/linux-installer.sh815 except Exception:STRING
LOW⚡setup/linux-installer.sh825 except Exception:STRING
LOWsetup/revendor.py30 except Exception as err:CODE
LOWsetup/git_commit_msg_hook.py47 except Exception:CODE
LOWsetup/iso_codes.py43 except Exception:CODE
LOWsetup/resources.py233 except Exception:CODE
LOWsetup/resources.py247 except Exception:CODE
LOWsetup/parallel_build.py34 except Exception as err:CODE
LOWmanual/custom.py57 except Exception as e:CODE
LOWmanual/custom.py68 except Exception as e:CODE
LOWmanual/custom.py87 except Exception:CODE
LOWmanual/template_ref_generate.py80 except Exception as e:STRING
LOWmanual/plugin_examples/editor_demo/main.py52 except Exception:CODE
LOWbypy/init_env.py136 except Exception as e:CODE
LOWbypy/windows/site.py84 except Exception:CODE
LOWsrc/calibre/rpdb.py95 except Exception:CODE
LOWsrc/calibre/startup.py145 except Exception:CODE
LOWsrc/calibre/startup.py221 except Exception:CODE
LOWsrc/calibre/startup.py226 except Exception:CODE
LOWsrc/calibre/startup.py261 except Exception:CODE
MEDIUMsrc/calibre/startup.py187def spawnv_passfds(path, args, passfds):CODE
LOWsrc/calibre/ptempfile.py63 except Exception:CODE
LOWsrc/calibre/ptempfile.py234 except Exception:CODE
MEDIUMsrc/calibre/ptempfile.py231def __del__(self):CODE
LOWsrc/calibre/constants.py58except Exception:CODE
LOWsrc/calibre/constants.py95 except Exception:CODE
LOWsrc/calibre/constants.py111 except Exception:CODE
LOWsrc/calibre/constants.py206 except Exception:CODE
LOWsrc/calibre/constants.py361 except Exception as err:CODE
LOWsrc/calibre/constants.py410 except Exception:CODE
LOWsrc/calibre/constants.py425 except Exception:CODE
MEDIUMsrc/calibre/constants.py419def cleanup_cdir():CODE
LOWsrc/calibre/__init__.py305 except Exception:CODE
2501 more matches not shown…
Hyper-Verbose Identifiers1494 hits · 1394 pts
SeverityFileLineSnippetContext
LOWresources/templates/kobo.js114function paginateAndMaintainProgress()CODE
LOWresources/templates/kobo.js199function estimateFirstAnchorForPageNumber(page)CODE
LOWresources/templates/kobo.js219function estimatePageNumberForAnchor(spanId)CODE
LOWsetup/build.py708 def create_sip_build_skeleton(self, src_dir, ext):STRING
LOWsetup/linux-installer.py583def get_https_resource_securely(url, timeout=60, max_redirects=5, ssl_version=None):STRING
LOWsetup/linux-installer.py799def check_for_recent_freetype():STRING
LOWsetup/translations.py144 def get_content_server_strings(self):CODE
LOWsetup/translations.py417 def compile_main_translations(self):CODE
LOWsetup/translations.py538 def compile_content_server_translations(self):CODE
LOWsetup/translations.py586 def _compile_website_translations(self, name='website', threshold=50):CODE
LOW⚡setup/translations.py642 def compile_website_translations(self):CODE
LOW⚡setup/translations.py651 def compile_changelog_translations(self):CODE
LOW⚡setup/translations.py654 def compile_user_manual_translations(self):CODE
LOWsetup/translations.py733 def check_for_user_manual_errors(self):CODE
LOWsetup/vcvars.py17def get_program_files_location(which=CSIDL_PROGRAM_FILESX86):CODE
LOWsetup/browser_data.py13def download_from_calibre_server(url):CODE
LOWsetup/linux-installer.sh632def get_https_resource_securely(url, timeout=60, max_redirects=5, ssl_version=None):STRING
LOWsetup/linux-installer.sh848def check_for_recent_freetype():STRING
LOWmanual/custom.py232def generate_ebook_convert_help(preamble, app):STRING
LOWmanual/template_ref_generate.py53def generate_template_language_help(language, log):STRING
LOW.github/workflows/macos_crash_report.py370 def application_specific_information(self) -> str | None:CODE
LOW.github/workflows/macos_crash_report.py433def get_crash_report_from_file(crash_report_file: IO) -> CrashReportBase:CODE
LOWbypy/linux/site.py20def setup_openssl_environment():CODE
LOWbypy/windows/wix.py88def get_components_from_files(env):CODE
LOWsrc/calibre/constants.py488def get_windows_user_locale_name():CODE
LOWsrc/calibre/constants.py492def get_windows_number_formats():CODE
LOWsrc/calibre/gui_launch.py49def register_with_default_programs():STRING
LOWsrc/calibre/gui_launch.py84def is_possible_media_pack_error(e):STRING
LOWsrc/calibre/test_build.py684def test_webengine_worker_main():CODE
LOW⚡src/calibre/linux.py930 def setup_desktop_integration(self): # {{{CODE
LOW⚡src/calibre/linux.py939 def do_setup_desktop_integration(self):CODE
LOWsrc/calibre/scraper/test_fetch_backend.py95 def test_recipe_browser_webengine(self):CODE
LOWsrc/calibre/ebooks/html_transform_rules.py478def transform_conversion_book(oeb, opts, serialized_rules):CODE
LOWsrc/calibre/ebooks/html_transform_rules.py603 def test_html_transform_actions(self):STRING
LOWsrc/calibre/ebooks/chardet.py48def strip_encoding_declarations(raw, limit=50 * 1024, preserve_newlines=False):CODE
LOWsrc/calibre/ebooks/chardet.py71def replace_encoding_declarations(raw, enc='utf-8', limit=50 * 1024):CODE
LOWsrc/calibre/ebooks/__init__.py112def extract_cover_from_embedded_svg(html, base, log):CODE
LOW⚡src/calibre/ebooks/__init__.py154def render_html_svg_workaround(path_to_html, log, width=1200, height=1600, root=''):CODE
LOWsrc/calibre/ebooks/html_entities.py2139def entity_to_unicode_in_python(match, exceptions=(), encoding='cp1252', result_exceptions={}):CODE
LOWsrc/calibre/ebooks/html_entities.py2182 def test_html_entity_replacement(self):CODE
LOW⚡src/calibre/ebooks/css_transform_rules.py138def parse_css_length_or_number(raw, default_unit=None):CODE
LOWsrc/calibre/ebooks/lrf/html/convert_from.py1797 def remove_unused_target_blocks(self):CODE
LOWsrc/calibre/ebooks/lrf/html/table.py199 def text_block_preferred_width(self, tb, debug=False):CODE
LOWsrc/calibre/ebooks/txt/markdownml.py90 def prepare_string_for_markdown(self, txt):CODE
LOWsrc/calibre/ebooks/txt/processor.py133def convert_markdown_with_metadata(txt, title='', extensions=DEFAULT_MD_EXTENSIONS):CODE
LOW⚡src/calibre/ebooks/txt/processor.py184def separate_paragraphs_single_line(txt):CODE
LOW⚡src/calibre/ebooks/txt/processor.py189def separate_paragraphs_print_formatted(txt):CODE
LOW⚡src/calibre/ebooks/txt/processor.py194def separate_hard_scene_breaks(txt):CODE
LOWsrc/calibre/ebooks/txt/processor.py357def get_images_from_polyglot_text(txt: str, base_dir: str = '', file_ext: str = 'txt') -> set:CODE
LOWsrc/calibre/ebooks/txt/textileml.py219 def prepare_string_for_textile(self, txt):CODE
LOWsrc/calibre/ebooks/mobi/utils.py629def convert_color_for_font_tag(val):CODE
LOWsrc/calibre/ebooks/mobi/reader/markup.py249def insert_images_into_markup(parts, resource_map, log):CODE
LOWsrc/calibre/ebooks/mobi/reader/mobi6.py811 def warn_about_trailing_entry_corruption(self):STRING
LOWsrc/calibre/ebooks/mobi/writer8/toc.py31def find_previous_calibre_inline_toc(oeb):STRING
LOWsrc/calibre/ebooks/mobi/writer8/index.py111 def calculate_control_bytes_for_each_entry(cls, entries):STRING
LOWsrc/calibre/ebooks/mobi/writer8/skeleton.py181 def calculate_insert_positions(self):CODE
LOWsrc/calibre/ebooks/mobi/writer8/tbs.py109def encode_strands_as_sequences(strands, tbs_type=8):STRING
LOWsrc/calibre/ebooks/mobi/writer8/tbs.py191def apply_trailing_byte_sequences(index_table, records, text_record_lengths):STRING
LOWsrc/calibre/ebooks/mobi/writer8/main.py243 def replace_internal_links_with_placeholders(self):CODE
LOWsrc/calibre/ebooks/mobi/writer2/indexer.py792 def calculate_trailing_byte_sequences(self):CODE
1434 more matches not shown…
Deep Nesting1455 hits · 1328 pts
SeverityFileLineSnippetContext
LOWsetup.py50CODE
LOWsetup/build.py89CODE
LOWsetup/build.py128CODE
LOWsetup/build.py245CODE
LOWsetup/linux-installer.py461CODE
LOWsetup/linux-installer.py583CODE
LOWsetup/hosting.py234CODE
LOWsetup/hosting.py169CODE
LOWsetup/fmt.py50CODE
LOWsetup/fmt.py82CODE
LOWsetup/hyphenation.py24CODE
LOWsetup/hyphenation.py83CODE
LOWsetup/upload.py304CODE
LOWsetup/build_environment.py20CODE
LOWsetup/plugins_mirror.py129CODE
LOWsetup/plugins_mirror.py208CODE
LOWsetup/plugins_mirror.py253CODE
LOWsetup/plugins_mirror.py281CODE
LOWsetup/plugins_mirror.py435CODE
LOWsetup/polib.py156CODE
LOWsetup/polib.py455CODE
LOWsetup/polib.py989CODE
LOWsetup/polib.py1313CODE
LOWsetup/polib.py1547CODE
LOWsetup/polib.py1636CODE
LOWsetup/polib.py1705CODE
LOWsetup/wincross.py151CODE
LOWsetup/wincross.py209CODE
LOWsetup/wincross.py295CODE
LOWsetup/wincross.py404CODE
LOWsetup/wincross.py53CODE
LOWsetup/translations.py113CODE
LOWsetup/translations.py157CODE
LOWsetup/translations.py371CODE
LOWsetup/translations.py417CODE
LOWsetup/translations.py538CODE
LOWsetup/translations.py586CODE
LOWsetup/translations.py733CODE
LOWsetup/git_hooks.py85CODE
LOWsetup/win-ci.py103CODE
LOWsetup/vcvars.py69CODE
LOWsetup/unix-ci.py302CODE
LOWsetup/changelog.py117CODE
LOWsetup/piper.py23CODE
LOWsetup/resources.py149CODE
LOWsetup/install.py266CODE
LOWsetup/parallel_build.py51CODE
LOWsetup/parallel_build.py76CODE
LOWsetup/gui.py23CODE
LOWsetup/publish.py274CODE
LOWmanual/custom.py343CODE
LOWmanual/template_ref_generate.py53CODE
LOWmanual/plugin_examples/editor_demo/main.py73CODE
LOW.github/workflows/macos_crash_report.py274CODE
LOW.github/workflows/macos_crash_report.py315CODE
LOW.github/workflows/macos_crash_report.py370CODE
LOWbypy/macos/__main__.py287CODE
LOWbypy/macos/__main__.py666CODE
LOWbypy/macos/__main__.py724CODE
LOWbypy/linux/site.py20CODE
1395 more matches not shown…
Cross-Language Confusion137 hits · 734 pts
SeverityFileLineSnippetContext
HIGHsetup/linux-installer.py644 stdout=null, stdin=subprocess.PIPE, close_fds=True, preexec_fn=lambda:STRING
HIGHicons/icns/make_iconsets.py126 subprocess.check_call(['ssh', 'ox', 'sh', '-c', '~/bin/update-calibre && python3 ~/calibre-src/icons/icns/make_iCODE
HIGH⚡src/calibre/linux.py709 pattern="$(basename ${pattern} 2> /dev/null)"CODE
HIGH⚡src/calibre/linux.py710 search="$(dirname ${search} 2> /dev/null)"CODE
HIGH⚡src/calibre/linux.py718 listing="$(ebook-device ls ${search} 2>/dev/null)"CODE
HIGHsrc/calibre/linux.py510 _zip_cache_list=( ${{(f)"$(zipinfo -1 $_zip_cache_name 2>/dev/null)"}} )STRING
HIGHsrc/calibre/linux.py515 _multi_parts / _zip_cache_list && return 0STRING
HIGHsrc/calibre/ebooks/covers.py295 mem = {f: getattr(obj, f, null) for f in fields}STRING
HIGHsrc/calibre/ebooks/covers.py300 if val is null:STRING
HIGHsrc/calibre/ebooks/render_html.py40 default_log.warn(f'Blocking URL request {qurl.toString()} as it is not for a resource related to the HTML fiCODE
HIGHsrc/calibre/ebooks/pdf/html_writer.py349 self.log.warn(f'Blocking URL request {qurl.toString()} as it is not for a resource in the book')CODE
HIGHsrc/calibre/ebooks/oeb/polish/container.py551 ans = self.href_to_name_cache.get(key, null)CODE
HIGHsrc/calibre/ebooks/oeb/polish/container.py552 if ans is null:CODE
HIGHsrc/calibre/ebooks/rtf2xml/pict.py144 self.__write_pic_obj.write('{\\rtf1 \n{\\fonttbl\\f0\\null;} \n')CODE
HIGHsrc/calibre/ebooks/conversion/preprocess.py135 percent is the percentage of lines that should be in a single bucket to return trueSTRING
HIGH⚡src/calibre/ebooks/metadata/opf3_test.py415 "rec_index": 29, "#extra#": null,CODE
HIGH⚡src/calibre/ebooks/metadata/opf3_test.py418 {"number_format": null}, "search_terms":CODE
HIGH⚡src/calibre/ebooks/metadata/opf3_test.py423 "custom_column_12", "is_multiple": null,CODE
HIGH⚡src/calibre/ebooks/metadata/opf3_test.py428 "rec_index": 26, "#extra#": null,CODE
HIGH⚡src/calibre/ebooks/metadata/opf3_test.py437 "is_multiple": null, "is_category": true}"/>CODE
HIGH⚡src/calibre/ebooks/metadata/opf3_test.py442 "#extra#": null, "colnum": 13,CODE
HIGH⚡src/calibre/ebooks/metadata/opf3_test.py469 "is_multiple": null, "is_category": false}"/>CODE
HIGH⚡src/calibre/ebooks/metadata/opf3_test.py473 "rec_index": 30, "#extra#": null,CODE
HIGH⚡src/calibre/ebooks/metadata/opf3_test.py481 "custom_column_1", "is_multiple": null,CODE
HIGH⚡src/calibre/ebooks/metadata/opf3_test.py515 "rec_index": 34, "#extra#": null,CODE
HIGH⚡src/calibre/ebooks/metadata/opf3_test.py523 "is_multiple": null, "is_category": false}"/>CODE
HIGH⚡src/calibre/ebooks/metadata/opf3_test.py527 "rec_index": 28, "#extra#": null,CODE
HIGHsrc/calibre/ebooks/metadata/opf3_test.py453 "is_multiple": null, "is_category": false}"/>CODE
HIGHsrc/calibre/ebooks/metadata/opf3_test.py457 "rec_index": 25, "#extra#": null,CODE
HIGHsrc/calibre/ebooks/metadata/opf3_test.py494 "custom_column_5", "is_multiple": null,CODE
HIGHsrc/calibre/ebooks/metadata/opf3_test.py499 "rec_index": 33, "#extra#": null,CODE
HIGHsrc/calibre/ebooks/metadata/opf3_test.py538 "is_multiple": null, "is_category": true}"/>CODE
HIGHsrc/calibre/ebooks/metadata/opf3_test.py542 "rec_index": 27, "#extra#": null,CODE
HIGHsrc/calibre/ebooks/metadata/opf3_test.py554 "is_multiple": null, "is_category": false}"/>CODE
HIGHsrc/calibre/ebooks/metadata/opf3_test.py558 "rec_index": 22, "#extra#": null,CODE
HIGHsrc/calibre/ebooks/metadata/opf3_test.py574 "rec_index": 24, "#extra#": null,CODE
HIGHsrc/calibre/ebooks/metadata/opf3_test.py585 "custom_column_2", "is_multiple": null,CODE
HIGHsrc/calibre/ebooks/docx/fields.py66 last_option = field_map.get(token[1], null)CODE
HIGHsrc/calibre/ebooks/docx/fields.py75 ans.pop(null, None)CODE
HIGH⚡src/calibre/web/automate/camoufox.py1426 if (rect.width > 0 && rect.height > 0 && getComputedStyle(el).visibility !== 'hidden') return el;CODE
HIGH⚡src/calibre/web/automate/camoufox.py1428 return null;CODE
HIGH⚡src/calibre/web/automate/camoufox.py1432 let observer = null, timer = null;CODE
HIGH⚡src/calibre/web/automate/camoufox.py1435 if (timer !== null) clearTimeout(timer);CODE
HIGH⚡src/calibre/web/automate/camoufox.py1440 timer = setTimeout(() => done(null), timeout);CODE
HIGH⚡src/calibre/web/automate/camoufox.py1450 if (!node || node === document.body) return false;CODE
HIGHsrc/calibre/web/automate/recipes.py98 const head = document.head || document.documentElement;CODE
HIGHsrc/calibre/web/automate/recipes.py115 const parent = document.body || document.documentElement;CODE
HIGHsrc/calibre/web/automate/recipes.py154 response.headers.forEach((value, name) => headerList.push([name, value]));CODE
HIGH⚡src/calibre/web/automate/test_camoufox.py86 document.addEventListener(type, (e) => window.__keys.push({CODE
HIGH⚡src/calibre/web/automate/test_camoufox.py90 document.addEventListener('input', (e) => window.__inputs.push({CODE
HIGH⚡src/calibre/web/automate/test_camoufox.py91 data: e.data ?? null, inputType: e.inputType || '', at: performance.now()}), true);CODE
HIGHsrc/calibre/web/automate/test_camoufox.py57 document.addEventListener('mousemove', (e) => window.__moves.push([e.clientX, e.clientY]), true);CODE
HIGHsrc/calibre/web/automate/test_camoufox.py59 document.addEventListener(type, (e) => window.__events.push({CODE
HIGHsrc/calibre/web/site_parsers/nytimes.py212 text = re.sub(r'{\"checkGate\":.*', 'null}}', text, flags=re.DOTALL)CODE
HIGHsrc/calibre/utils/forked_map.py129 stack.push(w)CODE
HIGHsrc/calibre/utils/rapydscript.py172 if (encoding && encoding.length) return b;CODE
HIGHsrc/calibre/utils/rapydscript.py327 self.spin_loop(lambda: eval_result is null, 'eval of JS took too long')STRING
HIGHsrc/calibre/utils/winreg/lib.py56 def __init__(self, name, typ, default=null, in_arg=True):CODE
HIGHsrc/calibre/utils/winreg/lib.py58 if default is null:CODE
HIGHsrc/calibre/utils/winreg/dde.py120 def __init__(self, name, typ, default=null, in_arg=True):CODE
77 more matches not shown…
Over-Commented Block371 hits · 349 pts
SeverityFileLineSnippetContext
LOWChangelog.txt1# vim: ft=yamlCOMMENT
LOWresources/calibre-portable.sh1#!/bin/bashCOMMENT
LOWresources/calibre-portable.sh21# this script file). This structure can also be used whenCOMMENT
LOWresources/calibre-portable.sh41# - calibre-portable.sh to run the Linux versionCOMMENT
LOWresources/calibre-portable.sh121# Create or read configuration file.COMMENT
LOWresources/calibre-portable.sh141 #COMMENT
LOWresources/calibre-portable.sh161 # -- library is on a (slow) network drive. Putting the metadata.dbCOMMENT
LOWresources/calibre-portable.sh181 # -- at the bottom of the calibre main screen.COMMENT
LOWresources/calibre-portable.sh201 #COMMENT
LOWresources/calibre-portable.sh221 ################################################################COMMENT
LOWresources/calibre-portable.sh241 #COMMENT
LOWresources/default_tweaks.py1#!/usr/bin/env pythonCOMMENT
LOWresources/default_tweaks.py21# a number - Assign that number always. The number is not in quotes. Note that 0.0 can be used here.COMMENT
LOWresources/default_tweaks.py41# Set this if the completion separator should be appended to the end of theCOMMENT
LOWresources/default_tweaks.py61#COMMENT
LOWresources/default_tweaks.py101# by changing the regular expression below. Strings are split on whatever theCOMMENT
LOWresources/default_tweaks.py121# categories_use_field_for_series_name = 'series_sort'COMMENT
LOWresources/default_tweaks.py141# (\ characters) in the template. It doesn't hurt anything to leave it thereCOMMENT
LOWresources/default_tweaks.py161# dd the day as number with a leading zero (01 to 31)COMMENT
LOWresources/default_tweaks.py181# For example, given the date of 9 Jan 2010, the following formats showCOMMENT
LOWresources/default_tweaks.py201# addition, titles for books added before changing the flag will retain theirCOMMENT
LOWresources/default_tweaks.py221save_template_title_series_sorting = 'library_order'COMMENT
LOWresources/default_tweaks.py281 'tur': (r'Bir\s+',),COMMENT
LOWresources/default_tweaks.py301COMMENT
LOWresources/default_tweaks.py321#COMMENT
LOWresources/default_tweaks.py341# has not been changed.COMMENT
LOWresources/default_tweaks.py361# sony_collection_renaming_rules={'series':'Series', 'tags':'Tag'}COMMENT
LOWresources/default_tweaks.py381# Default: empty (no rules), so no collection attributes are named.COMMENT
LOWresources/default_tweaks.py401# The distance is in absolute intensity units.COMMENT
LOWresources/default_tweaks.py421# collating order for the specified language. This might be useful if you runCOMMENT
LOWresources/default_tweaks.py441COMMENT
LOWresources/default_tweaks.py461# on at your own risk!COMMENT
LOWresources/default_tweaks.py481# comments are rendered in the metadata edit dialog. Set it to a positive orCOMMENT
LOWresources/default_tweaks.py501#: Do not preselect a completion when editing authors/tags/series/etc.COMMENT
LOWresources/default_tweaks.py521# Asimov and Quasimodo, whereas the default behavior would match only Asimov.COMMENT
LOWresources/default_tweaks.py541# Restrict the list of available output formats in the conversion dialogs.COMMENT
LOWresources/default_tweaks.py561cover_drop_exclude = ()COMMENT
LOWresources/default_tweaks.py581template_editor_tab_stop_width = 4COMMENT
LOWresources/default_tweaks.py601allow_template_database_functions_in_composites = FalseCOMMENT
LOWresources/default_tweaks.py621# language when transliterating East Asian languages to English. This might beCOMMENT
LOWresources/default_tweaks.py641#: Control GPU usage in Qt WebEngineCOMMENT
LOWresources/csscolorparser.js1// (c) Dean McNamee <dean@gmail.com>, 2012.COMMENT
LOWsetup/hosting.py341 os.chdir(cwd)COMMENT
LOWsetup/polib.py1281 # * OC: a file/line occurrenceCOMMENT
LOWsetup/linux-installer.sh481 # speed up common case w/o wildcardsCOMMENT
LOWmanual/conf.py1# calibre documentation build configuration file, created byCOMMENT
LOWmanual/plugin_examples/interface_demo/ui.py21 name = 'Interface Plugin Demo'COMMENT
LOWbypy/run-python.h1/*COMMENT
LOWbypy/linux/util.h1#pragma onceCOMMENT
LOWbypy/windows/util.c1/*COMMENT
LOWbypy/windows/portable-installer.cpp1#ifndef UNICODECOMMENT
LOWbypy/windows/XUnzip.cpp1// XUnzip.cpp Version 1.3COMMENT
LOWbypy/windows/XUnzip.cpp21// Version 1.1: - Added Unicode support to CreateZip() and ZipAdd()COMMENT
LOWbypy/windows/XUnzip.cpp41// Copyright (c) 1990-2002 Info-ZIP. All rights reserved.COMMENT
LOWbypy/windows/XUnzip.cpp61// freely, subject to the following restrictions:COMMENT
LOWbypy/windows/XUnzip.cpp81// including, but not limited to, different capitalizations),COMMENT
LOWbypy/windows/XUnzip.cpp101#include <tchar.h>COMMENT
LOWbypy/windows/XUnzip.cpp121//COMMENT
LOWbypy/windows/XUnzip.cpp141//COMMENT
LOWbypy/windows/XUnzip.cpp241#define UNZ_END_OF_LIST_OF_FILE (-100)COMMENT
311 more matches not shown…
Cross-File Repetition63 hits · 315 pts
SeverityFileLineSnippetContext
HIGHsrc/calibre/ebooks/txt/markdownml.py0@elem: the element in the etree that we are working on. @stylizer: the style information attached to the element.STRING
HIGHsrc/calibre/ebooks/txt/textileml.py0@elem: the element in the etree that we are working on. @stylizer: the style information attached to the element.STRING
HIGHsrc/calibre/ebooks/htmlz/oeb2html.py0@elem: the element in the etree that we are working on. @stylizer: the style information attached to the element.STRING
HIGHsrc/calibre/ebooks/mobi/reader/headers.py0remove all duplicates from vals, while preserving order.STRING
HIGHsrc/calibre/ebooks/metadata/odt.py0remove all duplicates from vals, while preserving order.STRING
HIGHsrc/calibre/ebooks/metadata/opf3.py0remove all duplicates from vals, while preserving order.STRING
HIGHsrc/calibre/gui2/tweak_book/preview.py0remove all duplicates from vals, while preserving order.STRING
HIGHsrc/calibre/ebooks/rtf2xml/paragraph_def.py0required: 'file' optional: 'copy'-- whether to make a copy of result for debugging 'temp_dir' --where to output temporarSTRING
HIGHsrc/calibre/ebooks/rtf2xml/old_rtf.py0required: 'file' optional: 'copy'-- whether to make a copy of result for debugging 'temp_dir' --where to output temporarSTRING
HIGHsrc/calibre/ebooks/rtf2xml/body_styles.py0required: 'file' optional: 'copy'-- whether to make a copy of result for debugging 'temp_dir' --where to output temporarSTRING
HIGHsrc/calibre/ebooks/rtf2xml/table_info.py0required: 'file' optional: 'copy'-- whether to make a copy of result for debugging 'temp_dir' --where to output temporarSTRING
HIGHsrc/calibre/ebooks/rtf2xml/sections.py0required: 'file' optional: 'copy'-- whether to make a copy of result for debugging 'temp_dir' --where to output temporarSTRING
HIGHsrc/calibre/ebooks/rtf2xml/paragraphs.py0required: 'file' optional: 'copy'-- whether to make a copy of result for debugging 'temp_dir' --where to output temporarSTRING
HIGHsrc/calibre/ebooks/rtf2xml/add_brackets.py0required: 'file' optional: 'copy'-- whether to make a copy of result for debugging 'temp_dir' --where to output temporarSTRING
HIGHsrc/calibre/ebooks/rtf2xml/fields_large.py0required: 'file' optional: 'copy'-- whether to make a copy of result for debugging 'temp_dir' --where to output temporarSTRING
HIGHsrc/calibre/ebooks/rtf2xml/fields_small.py0required: 'file' optional: 'copy'-- whether to make a copy of result for debugging 'temp_dir' --where to output temporarSTRING
HIGHsrc/calibre/ebooks/rtf2xml/styles.py0required: 'file' optional: 'copy'-- whether to make a copy of result for debugging 'temp_dir' --where to output temporarSTRING
HIGHsrc/calibre/ebooks/rtf2xml/table.py0required: 'file' optional: 'copy'-- whether to make a copy of result for debugging 'temp_dir' --where to output temporarSTRING
HIGHsrc/calibre/ebooks/rtf2xml/info.py0required: 'file' optional: 'copy'-- whether to make a copy of result for debugging 'temp_dir' --where to output temporarSTRING
HIGHsrc/calibre/ebooks/rtf2xml/inline.py0required: 'file' optional: 'copy'-- whether to make a copy of result for debugging 'temp_dir' --where to output temporarSTRING
HIGHsrc/calibre/ebooks/rtf2xml/colors.py0required: 'file' optional: 'copy'-- whether to make a copy of result for debugging 'temp_dir' --where to output temporarSTRING
HIGHsrc/calibre/ebooks/rtf2xml/group_borders.py0required: 'file' optional: 'copy'-- whether to make a copy of result for debugging 'temp_dir' --where to output temporarSTRING
HIGHsrc/calibre/ebooks/rtf2xml/list_numbers.py0required: 'file' optional: 'copy'-- whether to make a copy of result for debugging 'temp_dir' --where to output temporarSTRING
HIGHsrc/calibre/ebooks/rtf2xml/convert_to_tags.py0required: 'file' optional: 'copy'-- whether to make a copy of result for debugging 'temp_dir' --where to output temporarSTRING
HIGHsrc/calibre/ebooks/rtf2xml/headings_to_sections.py0required: 'file' optional: 'copy'-- whether to make a copy of result for debugging 'temp_dir' --where to output temporarSTRING
HIGHsrc/calibre/ebooks/rtf2xml/preamble_div.py0required: 'file' optional: 'copy'-- whether to make a copy of result for debugging 'temp_dir' --where to output temporarSTRING
HIGHsrc/calibre/ebooks/rtf2xml/make_lists.py0required: 'file' optional: 'copy'-- whether to make a copy of result for debugging 'temp_dir' --where to output temporarSTRING
HIGHsrc/calibre/ebooks/rtf2xml/group_styles.py0required: 'file' optional: 'copy'-- whether to make a copy of result for debugging 'temp_dir' --where to output temporarSTRING
HIGHsrc/calibre/ebooks/rtf2xml/fonts.py0required: 'file' optional: 'copy'-- whether to make a copy of result for debugging 'temp_dir' --where to output temporarSTRING
HIGHsrc/calibre/ebooks/rtf2xml/group_borders.py0form lists. use rtf's own formatting to determine if a paragraph definition is part of a list. use indents to determine STRING
HIGHsrc/calibre/ebooks/rtf2xml/make_lists.py0form lists. use rtf's own formatting to determine if a paragraph definition is part of a list. use indents to determine STRING
HIGHsrc/calibre/ebooks/rtf2xml/group_styles.py0form lists. use rtf's own formatting to determine if a paragraph definition is part of a list. use indents to determine STRING
HIGHsrc/calibre/ebooks/rtf2xml/group_borders.py0required: nothing return: nothing logic: the self.__end_list is a list of tokens that will force a list to end. likewiseSTRING
HIGHsrc/calibre/ebooks/rtf2xml/headings_to_sections.py0required: nothing return: nothing logic: the self.__end_list is a list of tokens that will force a list to end. likewiseSTRING
HIGHsrc/calibre/ebooks/rtf2xml/make_lists.py0required: nothing return: nothing logic: the self.__end_list is a list of tokens that will force a list to end. likewiseSTRING
HIGHsrc/calibre/ebooks/rtf2xml/group_styles.py0required: nothing return: nothing logic: the self.__end_list is a list of tokens that will force a list to end. likewiseSTRING
HIGHsrc/calibre/ebooks/rtf2xml/group_borders.py0required: line -- the line of current text. return: nothing logic: you are in a list, but in the middle of a paragraph dSTRING
HIGHsrc/calibre/ebooks/rtf2xml/make_lists.py0required: line -- the line of current text. return: nothing logic: you are in a list, but in the middle of a paragraph dSTRING
HIGHsrc/calibre/ebooks/rtf2xml/group_styles.py0required: line -- the line of current text. return: nothing logic: you are in a list, but in the middle of a paragraph dSTRING
HIGHsrc/calibre/ebooks/rtf2xml/group_borders.py0required: self, line returns: nothing logic look for the start of a paragraph definition. if one is found, check if it cSTRING
HIGHsrc/calibre/ebooks/rtf2xml/headings_to_sections.py0required: self, line returns: nothing logic look for the start of a paragraph definition. if one is found, check if it cSTRING
HIGHsrc/calibre/ebooks/rtf2xml/make_lists.py0required: self, line returns: nothing logic look for the start of a paragraph definition. if one is found, check if it cSTRING
HIGHsrc/calibre/ebooks/rtf2xml/group_styles.py0required: self, line returns: nothing logic look for the start of a paragraph definition. if one is found, check if it cSTRING
HIGHsrc/calibre/ebooks/rtf2xml/group_borders.py0required: nothing returns: original file will be changed logic:STRING
HIGHsrc/calibre/ebooks/rtf2xml/headings_to_sections.py0required: nothing returns: original file will be changed logic:STRING
HIGHsrc/calibre/ebooks/rtf2xml/make_lists.py0required: nothing returns: original file will be changed logic:STRING
HIGHsrc/calibre/ebooks/rtf2xml/group_styles.py0required: nothing returns: original file will be changed logic:STRING
HIGHsrc/calibre/ebooks/metadata/tag_mapper.py0remove all duplicates from vals, while preserving order. kmap must be a callable that returns a hashable value for everySTRING
HIGHsrc/calibre/ebooks/metadata/xmp.py0remove all duplicates from vals, while preserving order. kmap must be a callable that returns a hashable value for everySTRING
HIGHsrc/calibre/ebooks/metadata/author_mapper.py0remove all duplicates from vals, while preserving order. kmap must be a callable that returns a hashable value for everySTRING
HIGHsrc/calibre/spell/import_from.py0remove all duplicates from vals, while preserving order. kmap must be a callable that returns a hashable value for everySTRING
HIGHsrc/calibre/gui2/dialogs/opml.py0remove all duplicates from vals, while preserving order. kmap must be a callable that returns a hashable value for everySTRING
HIGHsrc/calibre/db/write.py0remove all duplicates from vals, while preserving order. kmap must be a callable that returns a hashable value for everySTRING
HIGHsrc/calibre/ebooks/metadata/book/base.py0a string representation of this object, suitable for printing to consoleSTRING
HIGHsrc/calibre/devices/kobo/books.py0a string representation of this object, suitable for printing to consoleSTRING
HIGHsrc/calibre/devices/kobo/bookmark.py0a string representation of this object, suitable for printing to consoleSTRING
HIGHsrc/calibre/ebooks/pdb/ereader/reader132.py0the first record in the file is always the header record. it holds information related to the location of text, images, STRING
HIGHsrc/calibre/ebooks/pdb/ereader/reader202.py0the first record in the file is always the header record. it holds information related to the location of text, images, STRING
HIGHsrc/calibre/ebooks/pdb/palmdoc/reader.py0the first record in the file is always the header record. it holds information related to the location of text, images, STRING
HIGHsrc/calibre/ebooks/pdb/ztxt/reader.py0the first record in the file is always the header record. it holds information related to the location of text, images, STRING
3 more matches not shown…
Unused Imports309 hits · 304 pts
SeverityFileLineSnippetContext
LOWsetup/linux-installer.py4CODE
LOWsetup/linux-installer.py4CODE
LOWsetup/linux-installer.py4CODE
LOWsetup/linux-installer.py4CODE
LOWsetup/commands.py78CODE
LOWbypy/init_env.py5CODE
LOWbypy/windows/__main__.py18CODE
LOWsrc/calibre/test_build.py120CODE
LOWsrc/calibre/ebooks/BeautifulSoup.py5CODE
LOWsrc/calibre/ebooks/BeautifulSoup.py5CODE
LOWsrc/calibre/ebooks/BeautifulSoup.py5CODE
LOWsrc/calibre/ebooks/BeautifulSoup.py5CODE
LOWsrc/calibre/ebooks/BeautifulSoup.py5CODE
LOWsrc/calibre/ebooks/BeautifulSoup.py5CODE
LOWsrc/calibre/ebooks/BeautifulSoup.py5CODE
LOWsrc/calibre/ebooks/BeautifulSoup.py5CODE
LOWsrc/calibre/ebooks/oeb/polish/tests/main.py13CODE
LOWsrc/calibre/ebooks/conversion/plumber.py1201CODE
LOWsrc/calibre/ebooks/conversion/plugins/pdf_output.py215CODE
LOWsrc/calibre/ebooks/metadata/opf3_test.py60CODE
LOWsrc/calibre/ebooks/metadata/opf3_test.py60CODE
LOWsrc/calibre/ebooks/metadata/sources/edelweiss.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/edelweiss.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/edelweiss.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/edelweiss.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/openlibrary.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/openlibrary.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/openlibrary.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/openlibrary.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/__init__.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/__init__.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/__init__.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/__init__.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/google_images.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/google_images.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/google_images.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/google_images.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/google.py4CODE
LOWsrc/calibre/ebooks/metadata/sources/google.py4CODE
LOWsrc/calibre/ebooks/metadata/sources/google.py4CODE
LOWsrc/calibre/ebooks/metadata/sources/google.py4CODE
LOWsrc/calibre/ebooks/metadata/sources/test.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/test.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/test.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/test.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/prefs.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/prefs.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/prefs.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/prefs.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/covers.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/covers.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/covers.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/covers.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/base.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/base.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/base.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/base.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/search_engines.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/search_engines.py5CODE
LOWsrc/calibre/ebooks/metadata/sources/search_engines.py5CODE
249 more matches not shown…
Hallucination Indicators20 hits · 215 pts
SeverityFileLineSnippetContext
CRITICALsrc/calibre/gui2/main.py96 # exists for, see calibre.gui2.cyoa.read.ReadStoryDialog.export_epub()STRING
CRITICAL⚡src/calibre/gui2/tweak_book/preview.py570 self.view._page.bridge.request_sync.connect(self.request_sync)CODE
CRITICAL⚡src/calibre/gui2/tweak_book/preview.py571 self.view._page.bridge.request_split.connect(self.request_split)CODE
CRITICAL⚡src/calibre/gui2/tweak_book/preview.py572 self.view._page.bridge.live_css_data.connect(self.live_css_data)CODE
CRITICAL⚡src/calibre/gui2/tweak_book/preview.py573 self.view._page.bridge.bridge_ready.connect(self.on_bridge_ready)CODE
CRITICALsrc/calibre/gui2/tweak_book/boss.py187 self.gui.central.search_panel.search_triggered.connect(self.search)CODE
CRITICALsrc/calibre/gui2/tweak_book/boss.py205 self.gui.central.search_panel.save_search.connect(self.save_search)CODE
CRITICALsrc/calibre/gui2/tweak_book/boss.py206 self.gui.central.search_panel.show_saved_searches.connect(self.show_saved_searches)CODE
CRITICALsrc/calibre/db/cache.py548 self.backend.fts.pool.initialized.wait()CODE
CRITICALsrc/calibre/srv/tests/content.py108 db = server.handler.router.ctx.library_broker.get(None)CODE
CRITICALsrc/calibre/srv/tests/content.py279 db = server.handler.router.ctx.library_broker.get(None)CODE
CRITICALsrc/calibre/srv/tests/content.py315 db = server.handler.router.ctx.library_broker.get(None)CODE
CRITICALsrc/calibre/srv/tests/ajax.py73 db = server.handler.router.ctx.library_broker.get(None)CODE
CRITICALsrc/calibre/srv/tests/ajax.py180 db = server.handler.router.ctx.library_broker.get(None)CODE
CRITICALsrc/calibre/srv/tests/ajax.py232 db = server.handler.router.ctx.library_broker.get(None)CODE
CRITICALsrc/calibre/srv/tests/ajax.py265 db = server.handler.router.ctx.library_broker.get(None)CODE
CRITICALsrc/calibre/srv/tests/ajax.py301 db = server.handler.router.ctx.library_broker.get(None)CODE
CRITICALsrc/calibre/srv/tests/ajax.py387 db = server.handler.router.ctx.library_broker.get(None)CODE
CRITICALsrc/calibre/srv/tests/ajax.py504 db = server.handler.router.ctx.library_broker.get(None)CODE
CRITICALsrc/calibre/srv/tests/ajax.py517 db = server.handler.router.ctx.library_broker.get(None)CODE
Decorative Section Separators54 hits · 164 pts
SeverityFileLineSnippetContext
MEDIUM⚡resources/calibre-portable.sh54# -----------------------------------------------------COMMENT
MEDIUM⚡resources/calibre-portable.sh60# -----------------------------------------------------COMMENT
MEDIUM⚡resources/calibre-portable.sh370# --------------------------------------------------------------COMMENT
MEDIUM⚡resources/calibre-portable.sh372# --------------------------------------------------------------COMMENT
MEDIUM⚡resources/calibre-portable.sh379# ---------------------------------------------------------------COMMENT
MEDIUM⚡resources/calibre-portable.sh381# ---------------------------------------------------------------COMMENT
MEDIUM⚡resources/calibre-portable.sh390# --------------------------------------------------------COMMENT
MEDIUM⚡resources/calibre-portable.sh392# --------------------------------------------------------COMMENT
MEDIUMresources/calibre-portable.sh79# ------------------------------------------------COMMENT
MEDIUMresources/calibre-portable.sh81# ------------------------------------------------COMMENT
MEDIUMresources/calibre-portable.sh120# ------------------------------------------------COMMENT
MEDIUMresources/calibre-portable.sh122# ------------------------------------------------COMMENT
MEDIUMresources/calibre-portable.sh272# ------------------------------------------------COMMENT
MEDIUMresources/calibre-portable.sh274# ------------------------------------------------COMMENT
MEDIUMresources/calibre-portable.sh286# --------------------------------------------------------------COMMENT
MEDIUMresources/calibre-portable.sh288# --------------------------------------------------------------COMMENT
MEDIUMresources/calibre-portable.sh305# --------------------------------------------------------------COMMENT
MEDIUMresources/calibre-portable.sh307# --------------------------------------------------------------COMMENT
MEDIUMresources/calibre-portable.sh320# --------------------------------------------------------------COMMENT
MEDIUMresources/calibre-portable.sh322# --------------------------------------------------------------COMMENT
MEDIUMresources/calibre-portable.sh334# --------------------------------------------------------------COMMENT
MEDIUMresources/calibre-portable.sh336# --------------------------------------------------------------COMMENT
MEDIUMresources/calibre-portable.sh354# --------------------------------------------------------------COMMENT
MEDIUMresources/calibre-portable.sh356# --------------------------------------------------------------COMMENT
MEDIUMmanual/conf.py33# ---------------------COMMENT
MEDIUMmanual/conf.py127# -----------------------COMMENT
MEDIUMmanual/conf.py227# ------------------------COMMENT
MEDIUMsrc/calibre/ebooks/lit/mssha1.py12# ======================================================================COMMENT
MEDIUMsrc/calibre/ebooks/lit/mssha1.py17# ======================================================================COMMENT
MEDIUMsrc/calibre/ebooks/lit/mssha1.py72# ======================================================================COMMENT
MEDIUMsrc/calibre/ebooks/lit/mssha1.py75# ======================================================================COMMENT
MEDIUMsrc/calibre/ebooks/lit/mssha1.py294# ======================================================================COMMENT
MEDIUMsrc/calibre/ebooks/lit/mssha1.py297# ======================================================================COMMENT
MEDIUMsrc/calibre/utils/run_tests.py170# ─── Parallel runner ──────────────────────────────────────────────────────────COMMENT
MEDIUMsrc/calibre/utils/run_tests.py605# ─── Test discovery ───────────────────────────────────────────────────────────COMMENT
MEDIUMsrc/calibre/utils/run_tests.py926# ─── Public entry points ──────────────────────────────────────────────────────COMMENT
MEDIUMsrc/calibre/devices/usbms/device.py699 # ------------------------------------------------------COMMENT
MEDIUMsrc/calibre/devices/usbms/device.py804 # ------------------------------------------------------COMMENT
MEDIUMsrc/calibre/devices/usbms/device.py824 # ------------------------------------------------------COMMENT
MEDIUMsrc/odf/odfmanifest.py30# -----------------------------------------------------------------------------COMMENT
MEDIUMsrc/odf/odfmanifest.py34# -----------------------------------------------------------------------------COMMENT
MEDIUMsrc/odf/odfmanifest.py85# -----------------------------------------------------------------------------COMMENT
MEDIUMsrc/odf/odfmanifest.py89# -----------------------------------------------------------------------------COMMENT
MEDIUMsrc/odf/odf2moinmoin.py308 # -----------------------------------COMMENT
MEDIUMsrc/odf/odf2moinmoin.py377 # -----------------------------------COMMENT
MEDIUMsrc/odf/odf2xhtml.py374# -----------------------------------------------------------------------------COMMENT
MEDIUMsrc/odf/odf2xhtml.py378# -----------------------------------------------------------------------------COMMENT
MEDIUMsrc/odf/odf2xhtml.py602 # --------------------------------------------------COMMENT
MEDIUMsrc/odf/odf2xhtml.py604 # --------------------------------------------------COMMENT
MEDIUMsrc/odf/odf2xhtml.py629 # --------------------------------------------------COMMENT
MEDIUMsrc/odf/odf2xhtml.py672 # -----------------------------------------------------------------------------COMMENT
MEDIUMsrc/odf/odf2xhtml.py676 # -----------------------------------------------------------------------------COMMENT
MEDIUMsrc/odf/odf2xhtml.py1606 # -----------------------------------------------------------------------------STRING
MEDIUMsrc/odf/odf2xhtml.py1610 # -----------------------------------------------------------------------------STRING
Self-Referential Comments59 hits · 156 pts
SeverityFileLineSnippetContext
MEDIUMmanual/conf.py4# This file is execfile()d with the current directory set to its containing dir.COMMENT
MEDIUMmanual/plugin_examples/interface_demo/ui.py30 # This method is called once per plugin, do initial setup hereCOMMENT
MEDIUMmanual/plugin_examples/editor_demo/main.py31 # Create an action, this will be added to the plugins toolbar andCOMMENT
MEDIUMsrc/calibre/ebooks/lrf/pylrs/pylrs.py241 """This class is a mixin class for elements that are contained in orSTRING
MEDIUMsrc/calibre/ebooks/mobi/writer8/index.py204 # Create the Index Header recordSTRING
MEDIUMsrc/calibre/ebooks/mobi/writer8/skeleton.py246 # Create the SKEL and Chunk tablesCOMMENT
MEDIUMsrc/calibre/ebooks/mobi/writer8/main.py45 # Create an inline ToC if one does not already existCOMMENT
MEDIUMsrc/calibre/ebooks/mobi/writer2/main.py433 # Create the MOBI 6 EXTHCOMMENT
MEDIUMsrc/calibre/ebooks/fb2/fb2ml.py285 # Create main section if there are no others to createCOMMENT
MEDIUMsrc/calibre/ebooks/conversion/plumber.py1227 # Create an OEBBook from the input file. The input plugin does all theSTRING
MEDIUMsrc/calibre/ebooks/metadata/mobi.py258 # Create an updated Record0COMMENT
MEDIUMsrc/calibre/ebooks/metadata/archive.py101 # Create an in-memory BytesIO stream for the fileCOMMENT
MEDIUMsrc/calibre/ebooks/metadata/ereader.py76 # Create a metadata record for the file if one does not already existCOMMENT
MEDIUMsrc/calibre/ebooks/pdb/plucker/reader.py411 # Create a new image the total size of all imageCOMMENT
MEDIUM⚡src/calibre/web/automate/test_recipes.py664 # Create the tab, and load the page, beforehand, since both countCOMMENT
MEDIUMsrc/calibre/web/automate/test_recipes.py687 # Create the tab, and load the page, beforehand, since both countCOMMENT
MEDIUMsrc/calibre/library/database2.py165 # Create the lock to be used to guard access to the metadata writerCOMMENT
MEDIUMsrc/calibre/library/database2.py3126 # Create the temporary tables to store the ids for books and tagsCOMMENT
MEDIUMsrc/calibre/library/custom_columns.py476 # Create the temporary temp_tables to store the ids for books and tagsSTRING
MEDIUMsrc/calibre/library/catalogs/epub_mobi_builder.py1494 # Create a divRunningTag for the next authorCOMMENT
MEDIUMsrc/calibre/library/catalogs/epub_mobi_builder.py1653 # Create a new month anchorCOMMENT
MEDIUMsrc/calibre/library/catalogs/epub_mobi_builder.py1918 # Create a new day anchorCOMMENT
MEDIUMsrc/calibre/library/catalogs/epub_mobi_builder.py2227 # Create an anchor from the tagCOMMENT
MEDIUMsrc/calibre/library/catalogs/epub_mobi_builder.py3336 # Create an NCX article entry for each populated author index letterSTRING
MEDIUMsrc/calibre/library/catalogs/epub_mobi_builder.py3417 # Create an NCX article entry for each date rangeSTRING
MEDIUMsrc/calibre/library/catalogs/epub_mobi_builder.py3450 # Create an NCX article entry for each populated monthSTRING
MEDIUMsrc/calibre/library/catalogs/epub_mobi_builder.py3523 # Create an NCX article entry for each date rangeSTRING
MEDIUMsrc/calibre/library/catalogs/epub_mobi_builder.py3545 # Create an NCX article entry for each populated daySTRING
MEDIUMsrc/calibre/library/catalogs/epub_mobi_builder.py3684 # Create the OPF tagsSTRING
MEDIUMsrc/calibre/library/catalogs/bibtex.py355 # Initialize BibTeX classCOMMENT
MEDIUM⚡src/calibre/utils/certgen.py95 # Create the Certificate AuthorityCOMMENT
MEDIUMsrc/calibre/utils/certgen.py106 # Create the server certificate issued by the newly created CACOMMENT
MEDIUMsrc/calibre/gui2/complete2.py690 # Create a Qt user property for the current text so that when this widgetCOMMENT
MEDIUM⚡src/calibre/gui2/device.py1863 # Define the cleaning functionCOMMENT
MEDIUMsrc/calibre/gui2/tools.py356 # Create the output fileCOMMENT
MEDIUMsrc/calibre/gui2/tools.py387 # Create a temporary copy of the databases to pass into the generationCOMMENT
MEDIUMsrc/calibre/gui2/__init__.py1297 # This class is present only for backwards compat with third party pluginsCOMMENT
MEDIUMsrc/calibre/gui2/comments_editor.py1353 # Create a cursor at start to find the first blockCOMMENT
MEDIUMsrc/calibre/gui2/tweak_book/editor/widget.py800 # Create the actions that are placed into the editors toolbarsCOMMENT
MEDIUMsrc/calibre/gui2/catalog/catalog_epub_mobi.py1394 # Create a list of prefixes for user selectionCOMMENT
MEDIUMsrc/calibre/gui2/library/alternate_views.py100 # Create a range based selector for each set of contiguous rowsCOMMENT
MEDIUMsrc/calibre/gui2/library/bookshelf_view.py703 # Create a larger image to accommodate the shadowCOMMENT
MEDIUMsrc/calibre/gui2/library/views.py1663 # Create a range based selector for each set of contiguous rowsCOMMENT
MEDIUMsrc/calibre/gui2/convert/gui_conversion.py99 # Create a minimal OptionParser that we can append toCOMMENT
MEDIUMsrc/calibre/gui2/store/search/search.py344 # Create the config dialog. It's going to put two config widgetsCOMMENT
MEDIUMsrc/calibre/db/tests/add_remove.py219 # Creating a book reports the fields it writes directly, which a VirtualCOMMENT
MEDIUMsrc/calibre/db/tests/add_remove.py695 # Create an enumeration column with a default valueCOMMENT
MEDIUMsrc/calibre/srv/metadata.py326 # Create the basic tree, containing all top level categories, userCOMMENT
MEDIUMsrc/calibre/devices/interface.py654 # The following methods are probably called on the GUI thread. Any driverCOMMENT
MEDIUMsrc/calibre/devices/kindle/driver.py650 # Create the sidecar folder if necessaryCOMMENT
MEDIUMsrc/calibre/devices/folder_device/driver.py14# This class is added to the standard device plugin chain, so that it canCOMMENT
MEDIUMsrc/calibre/devices/mtp/test.py74 # Create a folderCOMMENT
MEDIUMsrc/calibre/devices/mtp/test.py83 # Create a sub-folderCOMMENT
MEDIUMsrc/calibre/devices/mtp/test.py113 # Create a folderCOMMENT
MEDIUMsrc/calibre/devices/kobo/driver.py1018 # Create a connection to the sqlite databaseCOMMENT
MEDIUMsrc/calibre/devices/kobo/driver.py3017 # Create a connection to the sqlite databaseCOMMENT
MEDIUMsrc/odf/element.py36# The following code is pasted form xml.sax.saxutilsCOMMENT
MEDIUMsrc/odf/grammar.py51# The following code is generated from the RelaxNG schema with this notice:STRING
MEDIUMsrc/odf/load.py77 # Create the elementCOMMENT
Modern Structural Boilerplate112 hits · 120 pts
SeverityFileLineSnippetContext
LOWsetup/polib.py26__all__ = ['pofile', 'POFile', 'POEntry', 'mofile', 'MOFile', 'MOEntry',CODE
LOWsetup/commands.py8__all__ = [CODE
LOWsrc/calibre/scraper/qt.py221 def set_user_agent(self, val: str = '') -> None:CODE
LOW⚡src/calibre/scraper/qt_backend.py276 def set_user_agent(self, new_val: str) -> None:CODE
LOW⚡src/calibre/scraper/qt_backend.py279 def _set_cookie_from_header(self, cookie_string: str) -> None:CODE
LOW⚡src/calibre/scraper/qt_backend.py283 def _set_cookies(self, cookies: list[dict[str, str]]) -> None:CODE
LOW⚡src/calibre/scraper/webengine_backend.py299 def set_user_agent(self, new_val: str) -> None:STRING
LOW⚡src/calibre/scraper/webengine_backend.py309 def _set_cookie_from_header(self, cookie_string: str) -> None:STRING
LOW⚡src/calibre/scraper/webengine_backend.py313 def _set_cookies(self, cookies: list[dict[str, str]]) -> None:STRING
LOWsrc/calibre/ebooks/textile/__init__.py6__all__ = ['textile', 'textile_restricted']CODE
LOWsrc/calibre/ebooks/lit/reader.py24__all__ = ['LitReader']CODE
LOWsrc/calibre/ebooks/lit/writer.py31__all__ = ['LitWriter']CODE
LOWsrc/calibre/ebooks/lit/lzx.py9__all__ = ['Compressor', 'Decompressor', 'LZXError']CODE
LOWsrc/calibre/ebooks/oeb/reader.py58__all__ = ['OEBReader']CODE
LOWsrc/calibre/ebooks/oeb/writer.py12__all__ = ['OEBWriter']CODE
LOWsrc/calibre/ebooks/oeb/transforms/htmltoc.py10__all__ = ['HTMLTOCAdder']CODE
LOWsrc/calibre/ebooks/unihandecode/__init__.py3__all__ = ['Unihandecoder']CODE
LOW⚡src/calibre/web/automate/camoufox.py3713 async def set_ignore_https_errors(self, ignore: bool = True) -> None:CODE
LOW⚡src/calibre/web/automate/camoufox.py3717 async def set_extra_headers(self, headers: Mapping[str, str]) -> None:CODE
LOW⚡src/calibre/web/automate/camoufox.py3727 async def set_cookies(self, cookies: Iterable[Mapping[str, Any]]) -> None:CODE
LOWsrc/calibre/web/automate/camoufox.py274def set_screen_y(config: dict[str, Any], screen: Mapping[str, Any]) -> None:CODE
LOWsrc/calibre/web/automate/camoufox.py320def set_media_devices_defaults(config: dict[str, Any]) -> None:CODE
LOWsrc/calibre/web/automate/camoufox.py2566 async def set_attribute(self, name: str, value: str) -> None:CODE
LOWsrc/calibre/web/automate/camoufox.py2572 async def set_text(self, text: str) -> None:CODE
LOWsrc/calibre/web/automate/camoufox.py3700 async def set_proxy(self, proxy: Mapping[str, Any]) -> None:CODE
LOWsrc/calibre/web/automate/recipes.py928 def set_simple_cookie(self, name: str, value: str, domain: str | None = None, path: str | None = '/') -> None:CODE
LOWsrc/calibre/web/automate/recipes.py944 def set_user_agent(self, val: str = '') -> None:CODE
LOWsrc/calibre/utils/zipfile.py27__all__ = [CODE
LOWsrc/calibre/utils/titlecase.py16__all__ = ['titlecase']CODE
LOWsrc/calibre/utils/threadpool.py35__all__ = [CODE
LOWsrc/calibre/utils/tts/piper.py112def set_voice(config_path: str, model_path: str, length_scale_multiplier: float = 0, sentence_delay: float = 0.2) -> NonCODE
LOWsrc/calibre/utils/tts/piper.py249 def _set_voice(self, cfg: VoiceConfig, model_path: str) -> None:CODE
LOWsrc/calibre/utils/tts/piper.py269 def _set_kokoro_voice(self, voice: KokoroVoice, rate: float, sentence_delay: float) -> None:CODE
LOWsrc/calibre/utils/tts/piper.py277 def set_use_gpu(self, use_gpu: bool) -> None:CODE
LOW⚡src/calibre/ai/prefs.py66def set_prefs_for_provider(name: str, pref_map: dict[str, Any]) -> None:CODE
LOW⚡src/calibre/ai/prefs.py72def update_prefs_for_provider(name: str, pref_map: dict[str, Any]) -> None:CODE
LOWsrc/calibre/ai/open_router/config.py145 def set_filters(self, *filters: Callable[[AIModel], bool]) -> None:CODE
LOWsrc/calibre/ai/open_router/config.py149 def set_sorts(self, *sorts: Callable[[AIModel], object]) -> None:CODE
LOWsrc/calibre/ai/open_router/config.py359 def update_sorts(self) -> None:STRING
LOWsrc/calibre/ai/open_router/config.py364 def update_filters(self) -> None:STRING
LOWsrc/calibre/ai/venice/config.py136 def set_search_text(self, text: str) -> None:CODE
LOWsrc/calibre/ai/venice/config.py286 def update_filters(self) -> None:STRING
LOWsrc/calibre/gui2/chat_widget.py115 def set_max_height(self, val: int) -> None:CODE
LOWsrc/calibre/gui2/chat_widget.py165 def set_max_height(self, val: int) -> None:CODE
LOWsrc/calibre/gui2/chat_widget.py240 def set_input_enabled(self, enabled: bool) -> None:CODE
LOWsrc/calibre/gui2/complete2.py426 def set_use_startswith_search(self, yes: bool) -> None:CODE
LOWsrc/calibre/gui2/complete2.py438 def set_hierarchy_separator(self, sep: str = '') -> None:CODE
LOWsrc/calibre/gui2/tag_mapper.py426 def update_search(self) -> None:CODE
LOWsrc/calibre/gui2/momentum_scroll.py356 def update_momentum_scroll_settings(self, **kw) -> None:CODE
LOWsrc/calibre/gui2/llm.py420 def update_ui_state(self) -> None:CODE
LOWsrc/calibre/gui2/llm.py781 def set_actions_in_prefs(self, s: dict[str, Any]) -> None:CODE
LOWsrc/calibre/gui2/llm.py849 def update_render_count(self, reset=False) -> None:CODE
LOWsrc/calibre/gui2/removable_history.py158 def set_hovered_row(self, row: int) -> None:CODE
LOWsrc/calibre/gui2/removable_history.py163 def update_view(self) -> None:CODE
LOWsrc/calibre/gui2/widgets.py276 def set_pixmap(self, pixmap: QPixmap) -> None: ...CODE
LOWsrc/calibre/gui2/widgets.py341 def set_pixmap(self, pixmap: QPixmap) -> None:CODE
LOWsrc/calibre/gui2/widgets.py541 def set_pixmap(self, pixmap: QPixmap) -> None:CODE
LOWsrc/calibre/gui2/tweak_book/check.py75def set_skipped_rules(rules: dict[str, str]) -> None:CODE
LOWsrc/calibre/gui2/tweak_book/check.py149 def update_skipped_rules_item(self) -> None:CODE
LOW…ibre/gui2/preferences/look_feel_tabs/bookshelf_view.py304 def update_recount_txt(self, count) -> None:CODE
52 more matches not shown…
Dead Code32 hits · 64 pts
SeverityFileLineSnippetContext
MEDIUMsrc/calibre/ebooks/pdf/reflow.py1356CODE
MEDIUMsrc/calibre/ebooks/pdf/reflow.py1357CODE
MEDIUMsrc/calibre/ebooks/pdf/reflow.py1359CODE
MEDIUMsrc/calibre/ebooks/pdf/reflow.py1361CODE
MEDIUMsrc/calibre/ebooks/pdf/reflow.py1362CODE
MEDIUMsrc/calibre/ebooks/pdf/reflow.py1363CODE
MEDIUMsrc/calibre/ebooks/pdf/reflow.py1373CODE
MEDIUMsrc/calibre/ebooks/pdf/reflow.py1376CODE
MEDIUMsrc/calibre/ebooks/pdf/reflow.py1381CODE
MEDIUMsrc/calibre/ebooks/pdf/reflow.py1382CODE
MEDIUMsrc/calibre/ebooks/pdf/reflow.py1513CODE
MEDIUMsrc/calibre/ebooks/rtf2xml/process_tokens.py738CODE
MEDIUMsrc/calibre/ebooks/rtf2xml/process_tokens.py739CODE
MEDIUMsrc/calibre/ebooks/rtf2xml/process_tokens.py741CODE
MEDIUMsrc/calibre/ebooks/metadata/xisbn.py34CODE
MEDIUMsrc/calibre/ebooks/metadata/xisbn.py35CODE
MEDIUMsrc/calibre/ebooks/metadata/xisbn.py36CODE
MEDIUMsrc/calibre/ebooks/metadata/xisbn.py37CODE
MEDIUMsrc/calibre/ebooks/metadata/xisbn.py39CODE
MEDIUMsrc/calibre/ebooks/metadata/xisbn.py40CODE
MEDIUMsrc/calibre/ebooks/metadata/xisbn.py41CODE
MEDIUMsrc/calibre/ebooks/metadata/xisbn.py47CODE
MEDIUMsrc/calibre/ai/open_router/config.py279CODE
MEDIUMsrc/odf/odf2moinmoin.py299CODE
MEDIUMsrc/odf/odf2moinmoin.py300CODE
MEDIUMsrc/odf/odf2moinmoin.py301CODE
MEDIUMsrc/odf/odf2moinmoin.py302CODE
MEDIUMsrc/odf/odf2moinmoin.py306CODE
MEDIUMsrc/odf/odf2moinmoin.py540CODE
MEDIUMsrc/odf/odf2moinmoin.py550CODE
MEDIUMsrc/odf/odf2xhtml.py801CODE
MEDIUMsrc/odf/odf2xhtml.py808CODE
Redundant / Tautological Comments46 hits · 60 pts
SeverityFileLineSnippetContext
LOW⚡resources/calibre-portable.sh63 # Check if user has disabled cleanupCOMMENT
LOWsrc/calibre/prints.py76 # Set base_time to the current monotonic time if it hasn't been setCOMMENT
LOWsrc/calibre/prints.py80 # Check if debugging is enabledCOMMENT
LOWsrc/calibre/ebooks/odt/input.py198 # Check if we have only class selectors for this ruleCOMMENT
LOWsrc/calibre/ebooks/mobi/writer8/skeleton.py214 # Set this to a list to enable dumping of the original and rebuiltCOMMENT
LOWsrc/calibre/ebooks/pdf/reflow.py794 # Set margins to values that will get adjustedCOMMENT
LOWsrc/calibre/ebooks/oeb/stylizer.py416 # Check if either height or width is not defaultCOMMENT
LOWsrc/calibre/ebooks/oeb/transforms/metadata.py202 # Check if the resulting HTML has no content, if so remove itCOMMENT
LOWsrc/calibre/ebooks/oeb/polish/cover.py484 # Check if the first item in the spine is a simple cover wrapperCOMMENT
LOWsrc/calibre/ebooks/snb/snbfile.py80 # Read filesCOMMENT
LOWsrc/calibre/ebooks/snb/snbfile.py287 # Write file end markCOMMENT
LOWsrc/calibre/ebooks/conversion/plugins/epub_input.py186 # Check if the cover specified in the guide is alsoCOMMENT
LOWsrc/calibre/ebooks/conversion/plugins/htmlz_input.py48 # Set index to the first HTML file found if it's notCOMMENT
LOWsrc/calibre/ebooks/docx/index.py34 # Check if the xe field is contained inside a bookmark with theCOMMENT
LOWsrc/calibre/ebooks/docx/cleanup.py218 # Check if the first image in the document is possibly a coverCOMMENT
LOWsrc/calibre/library/database2.py699 # Check if the metadata used to construct paths has changedSTRING
LOWsrc/calibre/utils/zipfile.py387 # Set these to zero because we write them after the file dataCOMMENT
LOWsrc/calibre/utils/zipfile.py791 # Check if we were passed a file-like objectCOMMENT
LOWsrc/calibre/utils/formatter.py770 # Check if we have a keyword-type expressionCOMMENT
LOWsrc/calibre/utils/formatter.py800 # Check if it is a known one. We do this here so error reporting isCOMMENT
LOWsrc/calibre/utils/img.py304 # Check if we were minifiedCOMMENT
LOWsrc/calibre/ai/cyoa.py354# Set this to True to record the exact instructions and prompt sent to the AICOMMENT
LOWsrc/calibre/gui2/momentum_scroll.py270 # Check if we should stopCOMMENT
LOWsrc/calibre/gui2/__init__.py907 # Set skip_dialog_name to a unique name for this dialogCOMMENT
LOWsrc/calibre/gui2/__init__.py908 # Set skip_dialog_msg to a message displayed to the userCOMMENT
LOWsrc/calibre/gui2/tweak_book/editor/syntax/html.py121 # Check if we should still be bold or italicCOMMENT
LOWsrc/calibre/gui2/tweak_book/editor/smarts/html.py867 # Check if we are in comment/PI/etc.COMMENT
LOW…bre/gui2/preferences/look_feel_tabs/tb_partitioning.py48 # Check if setting not migrated yetCOMMENT
LOWsrc/calibre/gui2/tag_browser/ui.py93 # Check if the current cell is a category. If so, show an action for itCOMMENT
LOWsrc/calibre/gui2/tag_browser/model.py1894 # Check if the new name with the same category already exists. IfCOMMENT
LOWsrc/calibre/gui2/tag_browser/view.py489 # Check if we are moving the focus and we are at the beginning or theSTRING
LOWsrc/calibre/gui2/tag_browser/view.py621 # Check if one of the link or note icons was clicked. If so, deal withSTRING
LOWsrc/calibre/gui2/tag_browser/view.py1773 # Check if this is an intra-hierarchical-category drag/dropSTRING
LOWsrc/calibre/gui2/library/models.py120 # Check if the correct themed icon exists.COMMENT
LOWsrc/calibre/gui2/fts/cards.py486 # Assign cards to rowsCOMMENT
LOWsrc/calibre/gui2/dialogs/template_dialog_code_widget.py195 # Check if there is a selection. If not then only Shift-Tab is validCOMMENT
LOWsrc/calibre/gui2/dialogs/quickview.py591 # Check if we are in the GridView and there are no values for theCOMMENT
LOWsrc/calibre/db/cache.py1386 # Check if virtual_libraries_for_books rebuilt its cache. If it did thenSTRING
LOWsrc/calibre/db/tables.py364 # Check if all the books with the item are in the restriction. IfCOMMENT
LOWsrc/calibre/db/tables.py511 # Check if all the books with the item are in the restriction. IfCOMMENT
LOWsrc/calibre/devices/interface.py97 # Set this to None if the books on the device are files that the GUI canCOMMENT
LOWsrc/calibre/devices/kindle/driver.py537 # Check if we need to put the apnx into a sidecar dirCOMMENT
LOW…x_page_generator/generators/accurate_page_generator.py67 # Check if we are starting or stopping a p tag.COMMENT
LOWsrc/calibre/devices/smart_device_app/driver.py939 # Check if we have another UUID with the same lpath. If so, remove itCOMMENT
LOWsrc/calibre/devices/smart_device_app/driver.py1142 # Set up to recheck the sync columnsCOMMENT
LOWsrc/calibre/devices/mtp/unix/driver.py113 # Check if the currently connected device is still presentCOMMENT
AI Structural Patterns52 hits · 49 pts
SeverityFileLineSnippetContext
LOWsetup/polib.py333CODE
LOWsetup/polib.py886CODE
LOWsetup/polib.py1056CODE
LOWbypy/macos/__main__.py238CODE
LOWsrc/calibre/ebooks/lrf/meta.py514CODE
LOWsrc/calibre/ebooks/rtf/rtfml.py130CODE
LOWsrc/calibre/ebooks/txt/txtml.py83CODE
LOWsrc/calibre/ebooks/mobi/writer8/exth.py45CODE
LOWsrc/calibre/ebooks/oeb/base.py1630CODE
LOWsrc/calibre/ebooks/oeb/polish/kepubify.py658CODE
LOWsrc/calibre/ebooks/oeb/polish/images.py264CODE
LOWsrc/calibre/ebooks/rtf2xml/ParseRtf.py125CODE
LOWsrc/calibre/ebooks/rtf2xml/hex_2_utf8.py29CODE
LOWsrc/calibre/ebooks/metadata/toc.py50CODE
LOWsrc/calibre/ebooks/metadata/book/render.py152CODE
LOWsrc/calibre/ebooks/metadata/sources/search_engines.py249CODE
LOWsrc/calibre/ebooks/pml/pmlml.py106CODE
LOWsrc/calibre/ebooks/pml/pmlconverter.py691CODE
LOWsrc/calibre/ebooks/rb/rbml.py75CODE
LOWsrc/calibre/library/database2.py2980CODE
LOWsrc/calibre/library/__init__.py15CODE
LOWsrc/calibre/library/save_to_disk.py257CODE
LOWsrc/calibre/utils/titlecase.py101CODE
LOWsrc/calibre/utils/ffml_processor.py351CODE
LOWsrc/calibre/utils/config_base.py154CODE
LOWsrc/calibre/utils/config_base.py260CODE
LOWsrc/calibre/utils/certgen.py13CODE
LOWsrc/calibre/utils/certgen.py63CODE
LOWsrc/calibre/utils/img.py238CODE
LOWsrc/calibre/utils/smtp.py169CODE
LOWsrc/calibre/utils/ipc/simple_worker.py229CODE
LOWsrc/calibre/gui2/win_file_dialogs.py112CODE
LOWsrc/calibre/gui2/__init__.py899CODE
LOWsrc/calibre/gui2/ebook_download.py84CODE
LOWsrc/calibre/gui2/proceed.py397CODE
LOWsrc/calibre/gui2/qt_file_dialogs.py33CODE
LOWsrc/calibre/gui2/tag_browser/model.py54CODE
LOWsrc/calibre/gui2/tag_browser/view.py675CODE
LOWsrc/calibre/gui2/dialogs/confirm_delete.py95CODE
LOWsrc/calibre/gui2/dialogs/message_box.py112CODE
LOWsrc/calibre/gui2/dialogs/template_dialog.py604CODE
LOWsrc/calibre/gui2/metadata/diff.py665CODE
LOWsrc/calibre/db/categories.py54CODE
LOWsrc/calibre/db/cli/main.py59CODE
LOWsrc/calibre/srv/metadata.py120CODE
LOWsrc/calibre/srv/routes.py112CODE
LOWsrc/calibre/srv/tests/auth.py68CODE
LOWsrc/calibre/devices/kobo/books.py17CODE
LOWsrc/calibre/devices/kobo/driver.py3320CODE
LOWsrc/calibre/devices/kobo/driver.py3271CODE
LOWsrc/tinycss/tokenizer.py19CODE
LOWsrc/css_selectors/parser.py676CODE
AI Slop Vocabulary14 hits · 24 pts
SeverityFileLineSnippetContext
LOWresources/calibre-portable.sh31# To use your own structure, simply set the variables in the generated configuration file.COMMENT
MEDIUMsrc/calibre/ebooks/fb2/__init__.py16 # Try a more robust version (adapted from FBReader sources)COMMENT
LOWsrc/calibre/ebooks/comic/input.py77 # levels, in which case simply use the filenames.COMMENT
MEDIUMsrc/calibre/ebooks/djvu/djvubzzdec.py56//C- | any greater extent that may be necessary to utilize furtherCOMMENT
LOWsrc/calibre/ebooks/metadata/odt.py270 # if opf.metadata prop is false, just use the first image thatCOMMENT
MEDIUMsrc/calibre/ebooks/metadata/zip.py71 # enough to make it more robustCOMMENT
LOWsrc/calibre/ebooks/pml/pmlml.py379 # block isn't a real tag we just useCOMMENT
LOWsrc/calibre/spell/dictionary.py184 # Now just return any dictionary that matches the language, preferring userCOMMENT
LOWsrc/calibre/utils/zipfile.py219 # end-of-archive record, so just return the end record we were given.COMMENT
MEDIUMsrc/calibre/utils/icu.py394remove_accents = remove_accents_regex # more robust and fasterCODE
MEDIUMsrc/calibre/utils/tdir_in_cache.py106 """Create a temp dir inside cache_dir/base. The created dir is robustSTRING
LOWsrc/calibre/gui2/markdown_syntax_highlighter.py137 # If empty line no need to check for below elements just returnCOMMENT
MEDIUMsrc/calibre/db/cache.py1879 # We utilize the search restriction cache to speed this upSTRING
LOWsrc/calibre/devices/smart_device_app/driver.py1815 # This is a special case where the user just set a sync column. InCOMMENT
Synthetic Comment Markers3 hits · 22 pts
SeverityFileLineSnippetContext
HIGHsrc/calibre/ai/cyoa.py121 # The world a game is played in: what the AI generated, as the playerCOMMENT
HIGHsrc/calibre/gui2/cyoa/world.py313 # The AI generated portrait of the character, shown to the right ofCOMMENT
HIGHsrc/calibre/gui2/cyoa/data.py281 # An AI generated picture of the scene of one turn, with the cost ofCOMMENT
Fake / Example Data26 hits · 19 pts
SeverityFileLineSnippetContext
LOWresources/stylelint-bundle.min.js10var lf={}.hasOwnProperty,uf=/[ -,\.\/:-@\[-\^`\{-~]/,cf=/[ -,\.\/:-@\[\]\^`\{-~]/,df=/(^|\\+)?(\\[A-F0-9]{1,6})\x20(?![aCODE
LOWsrc/calibre/ebooks/metadata/test_author_sort.py77 self.check_all_methods('Jane Doe', invert='Doe, Jane', nocomma='Doe Jane')CODE
LOWsrc/calibre/gui2/device.py148 super().__init__('placeholder')CODE
LOWsrc/odf/elementtypes.py83 (TEXTNS, 'placeholder'),CODE
LOWsrc/odf/elementtypes.py240 (PRESENTATIONNS, 'placeholder'),CODE
LOWsrc/odf/grammar.py1075 (PRESENTATIONNS, 'placeholder'): (),STRING
LOWsrc/odf/grammar.py1293 (STYLENS, 'presentation-page-layout'): ((PRESENTATIONNS, 'placeholder'),),STRING
LOWsrc/odf/grammar.py1752 (TEXTNS, 'placeholder'),STRING
LOWsrc/odf/grammar.py1992 (TEXTNS, 'placeholder'),STRING
LOWsrc/odf/grammar.py2345 (TEXTNS, 'placeholder'),STRING
LOWsrc/odf/grammar.py2406 (TEXTNS, 'placeholder'): (),STRING
LOWsrc/odf/grammar.py2495 (TEXTNS, 'placeholder'),STRING
LOWsrc/odf/grammar.py2690 (TEXTNS, 'placeholder'),STRING
LOWsrc/odf/grammar.py2915 (TEXTNS, 'placeholder'),STRING
LOWsrc/odf/grammar.py3162 (PRESENTATIONNS, 'placeholder'): (STRING
LOWsrc/odf/grammar.py3419 (TEXTNS, 'placeholder'): ((TEXTNS, 'placeholder-type'),),STRING
LOWsrc/odf/grammar.py4437 (PRESENTATIONNS, 'placeholder'),STRING
LOWsrc/odf/grammar.py4638 (PRESENTATIONNS, 'placeholder'),STRING
LOWsrc/odf/grammar.py5392 (PRESENTATIONNS, 'placeholder'): (STRING
LOWsrc/odf/grammar.py7116 (TEXTNS, 'placeholder'): (STRING
LOWsrc/odf/presentation.py81 return Element(qname=(PRESENTATIONNS, 'placeholder'), **args)CODE
LOWsrc/odf/attrconverters.py900 ((PRESENTATIONNS, 'placeholder'), None): cnv_boolean,CODE
LOWsrc/odf/text.py453 return Element(qname=(TEXTNS, 'placeholder'), **args)CODE
LOW⚡src/tinycss/tests/tokenizing.py195 (r'"Lore\m Ipsum"', [('STRING', 'Lorem Ipsum')]), # or not specialCODE
LOW⚡src/tinycss/tests/tokenizing.py196 (r'"Lorem \49psum"', [('STRING', 'Lorem Ipsum')]),CODE
LOW⚡src/tinycss/tests/tokenizing.py197 (r'"Lorem \49 psum"', [('STRING', 'Lorem Ipsum')]),CODE
Verbosity Indicators5 hits · 8 pts
SeverityFileLineSnippetContext
LOWsrc/calibre/devices/smart_device_app/driver.py1783 # We need to check if our attributes are in the book. If they are notCOMMENT
LOWsrc/perfect-hashing/frozen/bits/pmh.h52 // Step 0: Bucket max is 2 * sqrt MCOMMENT
LOW⚡src/perfect-hashing/frozen/bits/pmh.h186 // Step 1: Place all of the keys into bucketsCOMMENT
LOW⚡src/perfect-hashing/frozen/bits/pmh.h189 // Step 2: Sort the buckets to process the ones with the most items first.COMMENT
LOWsrc/perfect-hashing/frozen/bits/pmh.h200 // Step 3: Map the items in buckets into hash tables.COMMENT
AI Response Leakage1 hit · 8 pts
SeverityFileLineSnippetContext
HIGHsrc/calibre/devices/winusb.py1037 # Note that I have observed that this failsCOMMENT
Structural Annotation Overuse4 hits · 8 pts
SeverityFileLineSnippetContext
LOWsrc/perfect-hashing/frozen/bits/pmh.h52 // Step 0: Bucket max is 2 * sqrt MCOMMENT
LOW⚡src/perfect-hashing/frozen/bits/pmh.h186 // Step 1: Place all of the keys into bucketsCOMMENT
LOW⚡src/perfect-hashing/frozen/bits/pmh.h189 // Step 2: Sort the buckets to process the ones with the most items first.COMMENT
LOWsrc/perfect-hashing/frozen/bits/pmh.h200 // Step 3: Map the items in buckets into hash tables.COMMENT
Slop Phrases4 hits · 6 pts
SeverityFileLineSnippetContext
MEDIUMresources/default_tweaks.py203# without changing anything is sufficient to change the sort. Or you can useCOMMENT
LOWsrc/calibre/ebooks/rtf2xml/paragraph_def.py549 tokens. (And don't forget to set the text string to ''!)STRING
LOWsrc/calibre/devices/__init__.py192 out("Don't forget to send the contents of /tmp/ioreg.txt")CODE
LOWsrc/calibre/devices/kobo/driver.py4416 # Don't forget to merge that on top of the common dictionary (c.f., https://stackoverflow.com/q/38987)COMMENT
Overly Generic Function Names3 hits · 3 pts
SeverityFileLineSnippetContext
LOWsrc/calibre/web/automate/recipes.py545async def handle_request(input_data: Mapping[str, Any], request: Mapping[str, Any]) -> Any: # noqa: ANN401CODE
LOWsrc/calibre/utils/threadpool.py278 def do_something(data):CODE
LOWsrc/calibre/gui2/dialogs/choose_library.py130 def perform_action(self, ac, loc):CODE
Example Usage Blocks1 hit · 2 pts
SeverityFileLineSnippetContext
LOWbypy/windows/XUnzip.cpp519// Usage example:COMMENT