repowiserepowise
Sign in
mitsuhiko/pluginbase
OverviewDocsArchitectureKnowledge GraphFilesCode HealthSecurityRefactoring

People & History

CommitsContributorsDecisions
Chat
Stats
repowiserepowise
ExplorePricingDocs
Sign in
repowisemitsuhiko/pluginbase
PL
PL

mitsuhiko / pluginbase

pythonmaster2a5db4c841 linessynced 3mo ago

Code health

9.2out of 10Excellent

This codebase scores 9.2 out of 10 for code health, which we rate excellent. It also scores maintainability 9.1 and static performance 9.9 out of 10. The three are scored separately and never blended into one number.

Full health report →
Dead code11exportsUnused exports that nothing in the graph reaches

Do next

Nothing stands out in the week to May 16, the last indexed commit.

Improve what Repowise can see

  • Add a test coverage report

    Without one, Repowise cannot tell tested code from untested code, so every test-related action says “unknown”.

    line coverage
    Unknown, no report
    Small effort
Lines of code
841
Files
22
Symbols
101
Modules
4
Languages
2

Recent activity

All commits →

Commits

  • 2a5db4c0Add a Pipfile with pytest and some scripts5y ago
  • f5066257Update the setup.py to be dynamic5y ago
  • 2751ca93Move the README file to RST for PyPi5y ago
  • 002f2d2bBump the version to 1.0.15y ago
  • 382037ceRemove old versions from setup.py5y ago
  • 06ab2ca2Remove old versions from travis.yml5y ago

Decisions

  • A module can always find its own source as well (the hello module calls get_plugin_source() itself).proposed · 3mo ago
  • Which because of a stable identifier has a predictable name.proposed · 3mo ago
  • because special names such as Name.Class, Name.Function, etc. are not recognized as such later in…proposed · 3mo ago
  • avoid the bug described in issue #6proposed · 3mo ago
  • The default parameters are necessary because this can be fired from the destructor and so late when…proposed · 3mo ago
  • Set these here to false by default so that a completely failing constructor does not fuck up the…proposed · 3mo ago
▸

Everything we found

45 open

Every detector's open count by area, each with its worst example. An inventory, not a to-do list: the actions above are the part worth doing.

  • worst item is low severity. Code health8Function hotspot · pluginbase.py7 findings · 1.8 deducted→
  • worst item is medium severity. Decisions7Use stable module identifiers for predictable self-import7 awaiting review→
  • worst item is medium severity. Ownership18docs/_themes/flask_theme_support.py100% single-owner concentration, not touched in 90 days→
  • worst item is low severity. Dead code12get_searchpathUnreachable function (26 lines)→

Composition

Open the graph →
python 90%
makefile 10%

Explore this codebase

  • Docs0 pages across 4 modules→
  • ChatAsk this codebase a question and get an answer with its sources.→
  • Files22 files with per-file docs, health and history→
  • ArchitectureDependency graph, layers, and 0 entry points→
  • Code healthPer-file scores, 9 open findings, coverage and refactoring targets→
  • Knowledge graphEntities, communities, and the paths between them→
  • Change couplingFiles that keep changing together, mined from commit history→
  • CommitsChange-risk ranked history with agent provenance→
  • ContributorsBus factor, per-file maintainers, and the human/agent split→
  • StatsSize class, origin, lifetime churn, rhythm and records→
  • CostsWhat indexing this snapshot cost, by model and by run.→