troessner/reek Reek

Code smell detector for Ruby

#191 (all)
Ruby (change)
33 seconds
4 months ago

This page shows an evaluation of the project's documentation.

Each class, module, method, etc. is given a grade based on how complete the docs are.

The bar above shows the distribution of these grades.

Seems really good
A
Reek::CLI::Options N
A
Reek::Examiner#initialize N
A
Reek::CodeComment::CodeCommentValidator Ne
A
Reek::SmellDetectors::BaseDetector Ne
A
Reek::Context::CodeContext Ne
A
Reek::AST::Node#each_node Ne
A
Reek::Spec::ShouldReekOf Ne
A
Reek::ContextBuilder Ne
A
Reek::SmellWarning Ne
A
Reek::Rake::Task Ne
A
Reek::SmellDetectors::ControlParameterHelpers::ControlParameterFinder#find_matches Ne
A
Reek::SmellDetectors::ControlParameterHelpers::ControlParameterFinder Ne
A
Reek::SmellDetectors::ControlParameterHelpers::CallInConditionFinder Ne
A
Reek::AST::SexpExtensions::ConstantDefiningNodeBase#simple_name Ne
A
Reek::AST::SexpExtensions::ConstantDefiningNodeBase#full_name Ne
A
Reek::Context::VisibilityTracker#track_singleton_visibility Ne
A
Reek::Configuration::ConfigurationFileFinder.load_from_file Ne
A
Reek::SmellDetectors::NilCheck::SafeNavigationNodeDetector Ne
A
Reek::AST::SexpExtensions::ModuleNodeBase#direct_children Ne
A
Reek::Errors::GarbageDetectorConfigurationInCommentError Ne
A
Reek::SmellDetectors::ControlParameterHelpers::Candidate Ne
A
Reek::SmellDetectors::UncommunicativeParameterName#sniff Ne
A
Reek::Configuration::AppConfiguration.from_default_path Ne
A
Reek::Errors::BadDetectorConfigurationKeyInCommentError Ne
A
Reek::SmellDetectors::UncommunicativeVariableName#sniff Ne
A
Reek::Configuration::DirectoryDirectives#directive_for Ne
A
Reek::SmellDetectors::InstanceVariableAssumption#sniff Ne
A
Reek::SmellDetectors::UncommunicativeModuleName#sniff Ne
A
Reek::SmellDetectors::UncommunicativeMethodName#sniff Ne
A
Reek::SmellDetectors::BaseDetector.configuration_keys Ne
A
Reek::SmellDetectors::TooManyInstanceVariables#sniff Ne
A
Reek::Configuration::AppConfiguration#directive_for Ne
A
Reek::AST::SexpExtensions::ConstantDefiningNodeBase Ne
A
Reek::SmellDetectors::NilCheck::NilCallNodeDetector Ne
A
Reek::SmellDetectors::NilCheck::NilWhenNodeDetector Ne
A
Reek::SmellDetectors::SubclassedFromCoreClass#sniff Ne
A
Reek::Configuration::ConfigurationConverter#convert Ne
A
Reek::SmellDetectors::UncommunicativeParameterName Ne
A
Reek::SmellDetectors::UncommunicativeVariableName Ne
A
Reek::Context::VisibilityTracker#apply_visibility Ne
A
Reek::Context::VisibilityTracker#track_visibility Ne
A
Reek::DetectorRepository.available_detector_names Ne
A
Reek::SmellDetectors::InstanceVariableAssumption Ne
A
Reek::CodeComment::CodeCommentValidator#validate Ne
A
Reek::SmellDetectors::DuplicateMethodCall#sniff Ne
A
Reek::Configuration::AppConfiguration.from_path Ne
A
Reek::Configuration::AppConfiguration.from_hash Ne
A
Reek::SmellDetectors::UncommunicativeModuleName Ne
A
Reek::SmellDetectors::RepeatedConditional#sniff Ne
A
Reek::Report::DocumentationLinkWarningFormatter Ne
A
Reek::SmellDetectors::IrresponsibleModule#sniff Ne
A
Reek::SmellDetectors::NestedIterators::Iterator Ne
A
Reek::Context::CodeContext#register_with_parent Ne
A
Reek::SmellDetectors::UncommunicativeMethodName Ne
A
Reek::Configuration::RakeTaskConverter.convert Ne
A
Reek::SmellDetectors::BaseDetector.to_detector Ne
A
Reek::SmellDetectors::TooManyInstanceVariables Ne
A
Reek::SmellDetectors::UnusedPrivateMethod::Hit Ne
A
Reek::SmellDetectors::BaseDetector.descendants Ne
A
Reek::SmellDetectors::SubclassedFromCoreClass Ne
A
Reek::SmellDetectors::MissingSafeMethod#sniff Ne
A
Reek::SmellDetectors::LongParameterList#sniff Ne
A
Reek::SmellDetectors::TooManyStatements#sniff Ne
A
Reek::Configuration::ConfigurationFileFinder Ne
A
Reek::SmellDetectors::ModuleInitialize#sniff Ne
A
Reek::SmellDetectors::UnusedParameters#sniff Ne
A
Reek::Configuration::DirectoryDirectives#add Ne
A
Reek::SmellDetectors::ControlParameter#sniff Ne
A
Reek::SmellDetectors::BooleanParameter#sniff Ne
A
Reek::SmellDetectors::TooManyConstants#sniff Ne
A
Reek::AST::SexpExtensions::NestedAssignables Ne
A
Reek::AST::SexpExtensions::LogicOperatorBase Ne
A
Reek::SmellDetectors::UtilityFunction#sniff Ne
A
Reek::Configuration::ConfigurationConverter Ne
A
Reek::Configuration::ConfigurationValidator Ne
A
Reek::SmellDetectors::NestedIterators#sniff Ne
A
Reek::Context::VisibilityTracker#initialize Ne
A
Reek::AST::SexpExtensions::IfNode#condition Ne
A
Reek::SmellDetectors::TooManyMethods#sniff Ne
A
Reek::SmellDetectors::ManualDispatch#sniff Ne
A
Reek::Context::StatementCounter#initialize Ne
A
Reek::Configuration::DefaultDirective#add Ne
A
Reek::SmellDetectors::ClassVariable#sniff Ne
A
Reek::Errors::IncomprehensibleSourceError Ne
A
Reek::SmellDetectors::UnusedPrivateMethod Ne
A
Reek::SmellDetectors::LongYieldList#sniff Ne
A
Reek::AST::SexpExtensions::ModuleNodeBase Ne
A
Reek::Report::SingleLineLocationFormatter Ne
A
Reek::SmellDetectors::DuplicateMethodCall Ne
A
Reek::AST::SexpExtensions::MethodNodeBase Ne
A
Reek::SmellDetectors::IrresponsibleModule Ne
A
Reek::SmellDetectors::RepeatedConditional Ne
A
Reek::AST::SexpExtensions::KwrestargNode Ne
A
Reek::Configuration::DirectoryDirectives Ne
A
Reek::Context::SingletonAttributeContext Ne
A
Reek::SmellDetectors::FeatureEnvy#sniff Ne
A
Reek::SmellDetectors::MissingSafeMethod Ne
A
Reek::SmellDetectors::LongParameterList Ne
A
Reek::SmellDetectors::TooManyStatements Ne
A
Reek::AST::SexpExtensions::KwoptargNode Ne
A
Reek::AST::SexpExtensions::BlockargNode Ne
A
Reek::Errors::BadDetectorInCommentError Ne
A
Reek::AST::SexpExtensions::VariableBase Ne
A
Reek::Configuration::RakeTaskConverter Ne
A
Reek::Report::CodeClimateConfiguration Ne
A
Reek::SmellDetectors::BooleanParameter Ne
A
Reek::SmellDetectors::ControlParameter Ne
A
Reek::AST::SexpExtensions::RestargNode Ne
A
Reek::SmellDetectors::ModuleInitialize Ne
A
Reek::SmellDetectors::UnusedParameters Ne
A
Reek::Report::DefaultLocationFormatter Ne
A
Reek::AST::ObjectRefs#record_reference Ne
A
Reek::AST::SexpExtensions::ArgNodeBase Ne
A
Reek::SmellDetectors::TooManyConstants Ne
A
Reek::Report::ProgressFormatter::Quiet Ne
A
Reek::SmellDetectors::NestedIterators Ne
A
Reek::Configuration::AppConfiguration Ne
A
Reek::SmellDetectors::UtilityFunction Ne
A
Reek::Report::VerboseHeadingFormatter Ne
A
Reek::AST::ASTNodeClassMap#initialize Ne
A
Reek::AST::SexpExtensions::LambdaNode Ne
A
Reek::SmellDetectors::Attribute#sniff Ne
A
Reek::AST::SexpExtensions::OptargNode Ne
A
Reek::Configuration::DefaultDirective Ne
A
Reek::Report::ProgressFormatter::Dots Ne
A
Reek::Context::SingletonMethodContext Ne
A
Reek::Context::CodeContext#initialize Ne
A
Reek::SmellDetectors::DataClump#sniff Ne
A
Reek::DetectorRepository.smell_types Ne
A
Reek::Report::BlankLocationFormatter Ne
A
Reek::Report::CodeClimateFingerprint Ne
A
Reek::SmellDetectors::ManualDispatch Ne
A
Reek::AST::SexpExtensions::ConstNode Ne
A
Reek::AST::SexpExtensions::YieldNode Ne
A
Reek::Report.warning_formatter_class Ne
A
Reek::AST::SexpExtensions::CasgnNode Ne
A
Reek::AST::SexpExtensions::SuperNode Ne
A
Reek::Report::SimpleWarningFormatter Ne
A
Reek::AST::SexpExtensions::BeginNode Ne
A
Reek::SmellDetectors::TooManyMethods Ne
A
Reek::AST::SexpExtensions::ClassNode Ne
A
Reek::AST::SexpExtensions::BlockNode Ne
A
Reek::Configuration::SchemaValidator Ne
A
Reek::AST::SexpExtensions::DefsNode Ne
A
Reek::CLI::Command::TodoListCommand Ne
A
Reek::AST::SexpExtensions::WhenNode Ne
A
Reek::Source::SourceLocator#sources Ne
A
Reek::AST::SexpExtensions::CaseNode Ne
A
Reek::Report::QuietHeadingFormatter Ne
A
Reek::AST::SexpExtensions::SelfNode Ne
A
Reek::SmellDetectors::LongYieldList Ne
A
Reek::SmellDetectors::ClassVariable Ne
A
Reek::AST::SexpExtensions::SendNode Ne
A
Reek::AST::SexpExtensions::LvarNode Ne
A
Reek::AST::SexpExtensions::SymNode Ne
A
Reek::AST::ObjectRefs#most_popular Ne
A
Reek::AST::SexpExtensions::DefNode Ne
A
Reek::Configuration::ExcludedPaths Ne
A
Reek::Report::CodeClimateFormatter Ne
A
Reek::CLI::Command::ReportCommand Ne
A
Reek::SmellDetectors::FeatureEnvy Ne
A
Reek::AST::SexpExtensions::IfNode Ne
A
Reek::AST::ObjectRefs#initialize Ne
A
Reek::Context::VisibilityTracker Ne
A
Reek::Report.progress_formatter Ne
A
Reek::Report.location_formatter Ne
A
Reek::CLI::Command::BaseCommand Ne
A
Reek::Context::StatementCounter Ne
A
Reek::Report::CodeClimateReport Ne
A
Reek::SmellDetectors::Attribute Ne
A
Reek::Context::AttributeContext Ne
A
Reek::SmellDetectors::DataClump Ne
A
Reek::SmellDetectors::NilCheck Ne
A
Reek::Report.heading_formatter Ne
A
Reek::Source::SourceCode.from Ne
A
Reek::AST::ReferenceCollector Ne
A
Reek::DocumentationLink.build Ne
A
Reek::Context::ModuleContext Ne
A
Reek::Spec::ShouldReekOnlyOf Ne
A
Reek::Context::MethodContext Ne
A
Reek::Context::GhostContext Ne
A
Reek::Examiner::NullHandler Ne
A
Reek::Examiner#smells_count Ne
A
Reek::Errors::EncodingError Ne
A
Reek::Source::SourceLocator Ne
A
Reek::AST::ASTNodeClassMap Ne
A
Reek::Context::RootContext Ne
A
Reek::AST::Node#statements Ne
A
Reek::Context::SendContext Ne
A
Reek::LoggingErrorHandler Ne
A
Reek::Errors::SyntaxError Ne
A
Reek::Report.report_class Ne
A
Reek::Report::BaseReport Ne
A
Reek::Report::YAMLReport Ne
A
Reek::Source::SourceCode Ne
A
Reek::DetectorRepository Ne
A
Reek::Spec::SmellMatcher Ne
A
Reek::Report::TextReport Ne
A
Reek::Report::HTMLReport Ne
A
Reek::Report::JSONReport Ne
A
Reek::SmellConfiguration Ne
A
Reek::Errors::BaseError Ne
A
Reek::DocumentationLink Ne
A
Reek::TreeDresser#dress Ne
A
Reek::Report::XMLReport Ne
A
Reek::Spec::ShouldReek Ne
A
Reek::CLI::Application Ne
A
Reek::Examiner#origin Ne
A
Reek::AST::ObjectRefs Ne
A
Reek::Examiner#smells Ne
A
Reek::CLI::Silencer Ne
A
Reek::AST::Builder Ne
A
Reek::Spec#reek_of Ne
A
Reek::CodeComment Ne
A
Reek::TreeDresser Ne
A
Reek::AST::Node Ne
A
Reek::Overrides Ne
A
Reek::Examiner Ne
A
Reek::Spec Ne
A
Reek::Source::SourceCode#initialize Ne
A
Reek::SmellDetectors::ClassVariable#class_variables_in_context Ne
A
Reek::Context::ModuleContext#attribute_context_class Ne
A
Reek::SmellDetectors::UnusedPrivateMethod::Hit#line Ne
A
Reek::SmellDetectors::UnusedPrivateMethod::Hit#name Ne
A
Reek::Context::ModuleContext#method_context_class Ne
A
Reek::Context::RootContext#method_context_class Ne
A
Reek::AST::SexpExtensions::BeginNode#statements Ne
A
Reek::AST::SexpExtensions::CasgnNode#superclass Ne
A
Reek::Context::CodeContext#append_child_context Ne
A
Reek::AST::SexpExtensions::CasgnNode#value Ne
A
Reek::AST::SexpExtensions::ConstNode#name Ne
A
Reek::Report::BaseReport#add_examiner Ne
A
Reek::Rake::Task#source_files Ne
A
Reek::Report::BaseReport#show Ne
A
Reek::Rake::Task#config_file Ne
A
Reek::Rake::Task#reek_opts Ne
A
Reek::AST::Node#condition Ne
A
Reek::AST::Node#length Ne
A
Reek::Context::CodeContext#local_nodes Ne
A
Reek::DetectorRepository.eligible_smell_types Ne
A
Reek::Configuration::ExcludedPaths#add Ne
A
Reek::Context::CodeContext#each Ne
A
Reek::Report::ProgressFormatter::Base E
A
Reek::Report::HeadingFormatterBase E
A
Reek::Context::GhostContext#register_with_parent E
A
Reek::Context::AttributeContext#initialize E
A
Reek::Context::MethodContext#initialize E
A
Reek::Context::ModuleContext#initialize E
A
Reek::Context::SendContext#initialize E
A
Reek::Version E
A
Reek::Context::GhostContext#attribute_context_class E
A
Reek::Context::ModuleContext#append_child_context E
A
Reek::Context::GhostContext#method_context_class E
A
Reek::Context::GhostContext#append_child_context E
A
Reek::Report::TextReport#add_examiner E
A
Reek::Report::CodeClimateReport#show E
A
Reek::Report::YAMLReport#show E
A
Reek::Report::HTMLReport#show E
A
Reek::Report::TextReport#show E
A
Reek::Report::JSONReport#show E
A
Reek::Report::XMLReport#show E

Let's raise the visibility of documentation in Open Source!

This page is for troessner/reek and is part of a project called "Inch CI", showing documentation measurements provided by Inch. Inch CI also provides a badge: (not counting low priority objects)

Can I have my own badges?

Sure! To get the badge for the project you are looking at, just click the badge next to the project name.

To register another project with Inch CI, just enter your username/repo on the homepage or sign in with GitHub!

Can I tell Inch which files to evaluate?

No problemo! Learn how ...

Can I configure a webhook for continuous integration?

Of course! Learn how ...

What is the goal of this?

I really think that posting badges for documentation in READMEs will benefit you (because people can see that your project is well documented) and our community in general by improving the visibility of documentation.

Let's start a discussion, let's raise the visibility of documentation, let's talk.

Suggestions, feedback, critique: Hit me up on Twitter or via issue.