From 86b0ac9bbfdb82cd3d8c9beab1c2c19842ea1f15 Mon Sep 17 00:00:00 2001 From: nelson Date: Fri, 14 Feb 2025 21:25:46 -0800 Subject: [PATCH] chore: generate new rubocop.yml file and add rubocop dependencies to gemfile --- .rubocop.yml | 16 +- .rubocop_todo.yml | 817 ++++++++++++++++++++++++++++++++++++++++++++++ Gemfile | 120 +++---- Gemfile.lock | 21 ++ 4 files changed, 902 insertions(+), 72 deletions(-) create mode 100644 .rubocop_todo.yml diff --git a/.rubocop.yml b/.rubocop.yml index 61850707..cc32da4b 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -1,15 +1 @@ -inherit_from: ~/.rubocop.yml - -AllCops: - TargetRubyVersion: 3.1 -Lint/ShadowingOuterLocalVariable: - Enabled: false - -Metrics/ClassLength: - Enabled: false - -Style/Documentation: - Enabled: false - -Style/StringLiterals: - EnforcedStyle: double_quotes +inherit_from: .rubocop_todo.yml diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml new file mode 100644 index 00000000..89f2e256 --- /dev/null +++ b/.rubocop_todo.yml @@ -0,0 +1,817 @@ +# This configuration was generated by +# `rubocop --auto-gen-config` +# on 2025-02-15 05:24:02 UTC using RuboCop version 1.71.2. +# The point is for the user to remove these configuration records +# one by one as the offenses are removed from the code base. +# Note that changes in the inspected code, or installation of new +# versions of RuboCop, may require this file to be generated again. + +# Offense count: 76 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: EnforcedStyle, IndentationWidth. +# SupportedStyles: with_first_argument, with_fixed_indentation +Layout/ArgumentAlignment: + Enabled: false + +# Offense count: 25 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: EnforcedStyle, IndentationWidth. +# SupportedStyles: with_first_element, with_fixed_indentation +Layout/ArrayAlignment: + Exclude: + - 'spec/services/survey_item_values_spec.rb' + +# Offense count: 1 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: EnforcedStyleAlignWith. +# SupportedStylesAlignWith: either, start_of_block, start_of_line +Layout/BlockAlignment: + Exclude: + - 'app/lib/seeder.rb' + +# Offense count: 3 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: AllowForAlignment. +Layout/CommentIndentation: + Exclude: + - 'lib/tasks/upload.rake' + +# Offense count: 1 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: EnforcedStyleAlignWith, Severity. +# SupportedStylesAlignWith: start_of_line, def +Layout/DefEndAlignment: + Exclude: + - 'app/lib/seeder.rb' + +# Offense count: 6 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: EnforcedStyle. +# SupportedStyles: leading, trailing +Layout/DotPosition: + Exclude: + - 'app/models/legacy/school_category.rb' + +# Offense count: 18 +# This cop supports safe autocorrection (--autocorrect). +Layout/EmptyLineAfterGuardClause: + Exclude: + - 'app/models/legacy/school_category.rb' + - 'app/services/dese/three_b_one.rb' + - 'bin/bundle' + - 'lib/tasks/upload.rake' + - 'spec/services/survey_item_values_spec.rb' + +# Offense count: 1 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: EmptyLineBetweenMethodDefs, EmptyLineBetweenClassDefs, EmptyLineBetweenModuleDefs, DefLikeMacros, AllowAdjacentOneLineDefs, NumberOfEmptyLines. +Layout/EmptyLineBetweenDefs: + Exclude: + - 'app/services/dese/three_b_one.rb' + +# Offense count: 2 +# This cop supports safe autocorrection (--autocorrect). +Layout/EmptyLines: + Exclude: + - 'app/services/dese/three_b_one.rb' + - 'spec/lib/seeder_spec.rb' + +# Offense count: 1 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: EnforcedStyle. +# SupportedStyles: around, only_before +Layout/EmptyLinesAroundAccessModifier: + Exclude: + - 'app/lib/seeder.rb' + +# Offense count: 3 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: EnforcedStyle. +# SupportedStyles: empty_lines, no_empty_lines +Layout/EmptyLinesAroundBlockBody: + Exclude: + - 'lib/tasks/data.rake' + - 'spec/services/survey_item_values_spec.rb' + +# Offense count: 2 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: EnforcedStyle. +# SupportedStyles: empty_lines, empty_lines_except_namespace, empty_lines_special, no_empty_lines, beginning_only, ending_only +Layout/EmptyLinesAroundClassBody: + Exclude: + - 'app/models/legacy/school_category.rb' + - 'app/services/dese/three_b_one.rb' + +# Offense count: 1 +# This cop supports safe autocorrection (--autocorrect). +Layout/EmptyLinesAroundExceptionHandlingKeywords: + Exclude: + - 'lib/tasks/data.rake' + +# Offense count: 1 +# This cop supports safe autocorrection (--autocorrect). +Layout/EmptyLinesAroundMethodBody: + Exclude: + - 'app/services/dese/three_a_two.rb' + +# Offense count: 8 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: AllowForAlignment, AllowBeforeTrailingComments, ForceEqualSignAlignment. +Layout/ExtraSpacing: + Exclude: + - 'app/lib/seeder.rb' + - 'app/services/dese/four_d_one.rb' + - 'app/services/dese/one_a_one.rb' + - 'app/services/dese/three_b_one.rb' + - 'spec/controllers/overview_controller_spec.rb' + - 'spec/services/survey_item_values_spec.rb' + +# Offense count: 38 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: AllowMultipleStyles, EnforcedHashRocketStyle, EnforcedColonStyle, EnforcedLastArgumentHashStyle. +# SupportedHashRocketStyles: key, separator, table +# SupportedColonStyles: key, separator, table +# SupportedLastArgumentHashStyles: always_inspect, always_ignore, ignore_implicit, ignore_explicit +Layout/HashAlignment: + Exclude: + - 'spec/lib/seeder_spec.rb' + - 'spec/services/survey_item_values_spec.rb' + +# Offense count: 3 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: EnforcedStyle. +# SupportedStyles: normal, indented_internal_methods +Layout/IndentationConsistency: + Exclude: + - 'app/lib/seeder.rb' + +# Offense count: 11 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: Width, AllowedPatterns. +Layout/IndentationWidth: + Exclude: + - 'app/lib/seeder.rb' + - 'lib/tasks/upload.rake' + +# Offense count: 1 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: EnforcedStyle. +# SupportedStyles: symmetrical, new_line, same_line +Layout/MultilineArrayBraceLayout: + Exclude: + - 'app/services/dese/three_b_one.rb' + +# Offense count: 11 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: EnforcedStyle, IndentationWidth. +# SupportedStyles: aligned, indented, indented_relative_to_receiver +Layout/MultilineMethodCallIndentation: + Exclude: + - 'app/models/legacy/school_category.rb' + - 'spec/lib/seeder_spec.rb' + +# Offense count: 4 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: EnforcedStyle, IndentationWidth. +# SupportedStyles: aligned, indented +Layout/MultilineOperationIndentation: + Exclude: + - 'app/models/legacy/school_category.rb' + - 'bin/bundle' + +# Offense count: 1 +# This cop supports safe autocorrection (--autocorrect). +Layout/SpaceAfterComma: + Exclude: + - 'app/lib/seeder.rb' + +# Offense count: 2 +# This cop supports safe autocorrection (--autocorrect). +Layout/SpaceAroundMethodCallOperator: + Exclude: + - 'app/services/dese/three_b_one.rb' + +# Offense count: 7 +# This cop supports safe autocorrection (--autocorrect). +Layout/SpaceBeforeComma: + Exclude: + - 'app/lib/seeder.rb' + - 'app/services/dese/three_b_one.rb' + +# Offense count: 1 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: AllowForAlignment. +Layout/SpaceBeforeFirstArg: + Exclude: + - 'spec/services/survey_item_values_spec.rb' + +# Offense count: 3 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: EnforcedStyle. +# SupportedStyles: require_no_space, require_space +Layout/SpaceInLambdaLiteral: + Exclude: + - 'app/models/legacy/school_category.rb' + +# Offense count: 3 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: EnforcedStyle, EnforcedStyleForEmptyBrackets. +# SupportedStyles: space, no_space, compact +# SupportedStylesForEmptyBrackets: space, no_space +Layout/SpaceInsideArrayLiteralBrackets: + Exclude: + - 'app/services/dese/four_d_two.rb' + - 'spec/services/survey_item_values_spec.rb' + +# Offense count: 3 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: EnforcedStyle, EnforcedStyleForEmptyBraces, SpaceBeforeBlockParameters. +# SupportedStyles: space, no_space +# SupportedStylesForEmptyBraces: space, no_space +Layout/SpaceInsideBlockBraces: + Exclude: + - 'app/lib/seeder.rb' + - 'spec/lib/seeder_spec.rb' + +# Offense count: 2 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: EnforcedStyle, EnforcedStyleForEmptyBraces. +# SupportedStyles: space, no_space, compact +# SupportedStylesForEmptyBraces: space, no_space +Layout/SpaceInsideHashLiteralBraces: + Exclude: + - 'app/services/dese/three_b_one.rb' + - 'spec/services/survey_item_values_spec.rb' + +# Offense count: 1 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: EnforcedStyle. +# SupportedStyles: final_newline, final_blank_line +Layout/TrailingEmptyLines: + Exclude: + - 'spec/models/analyze/graph/column/GenderColumn/unknown_spec.rb' + +# Offense count: 8 +# This cop supports unsafe autocorrection (--autocorrect-all). +# Configuration parameters: AllowSafeAssignment. +Lint/AssignmentInCondition: + Exclude: + - 'app/models/report/beyond_learning_loss.rb' + - 'app/models/report/beyond_learning_loss_school_response_rates.rb' + - 'app/models/report/measure.rb' + - 'app/models/report/measure_summary.rb' + - 'app/models/report/subcategory.rb' + - 'app/models/report/survey_item_by_item.rb' + - 'app/models/report/survey_item_response.rb' + - 'lib/tasks/data.rake' + +# Offense count: 2 +# Configuration parameters: DebuggerMethods, DebuggerRequires. +Lint/Debugger: + Exclude: + - 'spec/services/cleaner_spec.rb' + +# Offense count: 3 +Lint/IneffectiveAccessModifier: + Exclude: + - 'app/models/academic_year.rb' + - 'app/services/dese/loader.rb' + +# Offense count: 1 +Lint/MixedRegexpCaptureTypes: + Exclude: + - 'app/services/cleaner.rb' + +# Offense count: 2 +Lint/NonLocalExitFromIterator: + Exclude: + - 'app/services/cleaner.rb' + - 'app/services/dese/scraper.rb' + +# Offense count: 52 +Lint/ShadowingOuterLocalVariable: + Enabled: false + +# Offense count: 1 +Lint/StructNewOverride: + Exclude: + - 'app/models/legacy/question.rb' + +# Offense count: 8 +# Configuration parameters: AllowComments, AllowNil. +Lint/SuppressedException: + Exclude: + - 'app/models/report/beyond_learning_loss.rb' + - 'app/models/report/beyond_learning_loss_school_response_rates.rb' + - 'app/models/report/measure.rb' + - 'app/models/report/measure_summary.rb' + - 'app/models/report/subcategory.rb' + - 'app/models/report/survey_item_by_item.rb' + - 'app/models/report/survey_item_response.rb' + - 'lib/tasks/data.rake' + +# Offense count: 1 +# Configuration parameters: AllowKeywordBlockArguments. +Lint/UnderscorePrefixedVariableName: + Exclude: + - 'app/models/legacy/school_category.rb' + +# Offense count: 1 +Lint/UnreachableCode: + Exclude: + - 'app/controllers/legacy/application_controller.rb' + +# Offense count: 1 +# Configuration parameters: AllowedPatterns. +# AllowedPatterns: (?-mix:(exactly|at_least|at_most)\(\d+\)\.times) +Lint/UnreachableLoop: + Exclude: + - 'spec/services/dese/one_a_one_spec.rb' + +# Offense count: 2 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: AutoCorrect, IgnoreEmptyBlocks, AllowUnusedKeywordArguments. +Lint/UnusedBlockArgument: + Exclude: + - 'app/services/dese/three_b_one.rb' + +# Offense count: 8 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: AutoCorrect, AllowUnusedKeywordArguments, IgnoreEmptyMethods, IgnoreNotImplementedMethods, NotImplementedExceptions. +# NotImplementedExceptions: NotImplementedError +Lint/UnusedMethodArgument: + Exclude: + - 'app/models/report/beyond_learning_loss.rb' + - 'app/models/report/measure.rb' + - 'app/models/report/measure_summary.rb' + - 'app/models/report/subcategory.rb' + - 'app/models/report/survey_item_response.rb' + - 'app/presenters/analyze/presenter.rb' + - 'app/services/demographic_loader.rb' + - 'app/services/dese/one_a_one.rb' + +# Offense count: 16 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: AutoCorrect. +Lint/UselessAssignment: + Exclude: + - 'app/models/academic_year.rb' + - 'app/models/legacy/attempt.rb' + - 'app/models/report/beyond_learning_loss.rb' + - 'app/models/report/measure.rb' + - 'app/models/report/survey_item_by_item.rb' + - 'app/presenters/analyze/graph/column/all_survey_data.rb' + - 'app/presenters/analyze/graph/column/score_for_race.rb' + - 'app/services/dese/three_b_one.rb' + - 'lib/tasks/data.rake' + - 'spec/services/cleaner_spec.rb' + - 'spec/services/survey_item_values_spec.rb' + - 'spec/services/survey_responses_data_loader_spec.rb' + +# Offense count: 1 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: AutoCorrect, CheckForMethodsWithNoSideEffects. +Lint/Void: + Exclude: + - 'app/controllers/legacy/attempts_controller.rb' + +# Offense count: 98 +# Configuration parameters: AllowedMethods, AllowedPatterns, CountRepeatedAttributes. +Metrics/AbcSize: + Max: 219 + +# Offense count: 206 +# Configuration parameters: CountComments, CountAsOne, AllowedMethods, AllowedPatterns. +# AllowedMethods: refine +Metrics/BlockLength: + Max: 837 + +# Offense count: 19 +# Configuration parameters: CountComments, CountAsOne. +Metrics/ClassLength: + Max: 280 + +# Offense count: 37 +# Configuration parameters: AllowedMethods, AllowedPatterns. +Metrics/CyclomaticComplexity: + Max: 31 + +# Offense count: 122 +# Configuration parameters: CountComments, CountAsOne, AllowedMethods, AllowedPatterns. +Metrics/MethodLength: + Max: 119 + +# Offense count: 1 +# Configuration parameters: CountComments, CountAsOne. +Metrics/ModuleLength: + Max: 296 + +# Offense count: 2 +# Configuration parameters: CountKeywordArgs, MaxOptionalParameters. +Metrics/ParameterLists: + Max: 6 + +# Offense count: 29 +# Configuration parameters: AllowedMethods, AllowedPatterns. +Metrics/PerceivedComplexity: + Max: 34 + +# Offense count: 3 +# This cop supports unsafe autocorrection (--autocorrect-all). +# Configuration parameters: EnforcedStyleForLeadingUnderscores. +# SupportedStylesForLeadingUnderscores: disallowed, required, optional +Naming/MemoizedInstanceVariableName: + Exclude: + - 'app/services/disaggregation_row.rb' + - 'app/services/esp_loader.rb' + - 'app/services/staffing_loader.rb' + +# Offense count: 1 +# Configuration parameters: MinNameLength, AllowNamesEndingInNumbers, AllowedNames, ForbiddenNames. +# AllowedNames: as, at, by, cc, db, id, if, in, io, ip, of, on, os, pp, to +Naming/MethodParameterName: + Exclude: + - 'app/services/dese/loader.rb' + +# Offense count: 1 +# Configuration parameters: NamePrefix, ForbiddenPrefixes, AllowedMethods, MethodDefinitionMacros. +# NamePrefix: is_, has_, have_ +# ForbiddenPrefixes: is_, has_, have_ +# AllowedMethods: is_a? +# MethodDefinitionMacros: define_method, define_singleton_method +Naming/PredicateName: + Exclude: + - 'spec/**/*' + - 'app/services/dese/scraper.rb' + +# Offense count: 103 +# Configuration parameters: EnforcedStyle, CheckMethodNames, CheckSymbols, AllowedIdentifiers, AllowedPatterns. +# SupportedStyles: snake_case, normalcase, non_integer +# AllowedIdentifiers: capture3, iso8601, rfc1123_date, rfc822, rfc2822, rfc3339, x86_64 +Naming/VariableNumber: + Enabled: false + +# Offense count: 1 +# This cop supports unsafe autocorrection (--autocorrect-all). +# Configuration parameters: EnforcedStyle. +# SupportedStyles: always, conditionals +Style/AndOr: + Exclude: + - 'app/models/income.rb' + +# Offense count: 2 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: EnforcedStyle, ProceduralMethods, FunctionalMethods, AllowedMethods, AllowedPatterns, AllowBracesOnProceduralOneLiners, BracesRequiredMethods. +# SupportedStyles: line_count_based, semantic, braces_for_chaining, always_braces +# ProceduralMethods: benchmark, bm, bmbm, create, each_with_object, measure, new, realtime, tap, with_object +# FunctionalMethods: let, let!, subject, watch +# AllowedMethods: lambda, proc, it +Style/BlockDelimiters: + Exclude: + - 'spec/lib/seeder_spec.rb' + +# Offense count: 1 +# This cop supports unsafe autocorrection (--autocorrect-all). +# Configuration parameters: MinBranchesCount. +Style/CaseLikeIf: + Exclude: + - 'app/controllers/exports_controller.rb' + +# Offense count: 5 +# This cop supports unsafe autocorrection (--autocorrect-all). +# Configuration parameters: EnforcedStyle. +# SupportedStyles: nested, compact +Style/ClassAndModuleChildren: + Exclude: + - 'app/presenters/analyze/background_presenter.rb' + - 'app/presenters/overview/overview_presenter.rb' + - 'app/presenters/overview/parent_overview_presenter.rb' + - 'app/presenters/overview/scorecard_presenter.rb' + - 'app/presenters/overview/variance_chart_row_presenter.rb' + +# Offense count: 1 +# This cop supports unsafe autocorrection (--autocorrect-all). +Style/CombinableLoops: + Exclude: + - 'lib/tasks/one_off.rake' + +# Offense count: 1 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: Keywords, RequireColon. +# Keywords: TODO, FIXME, OPTIMIZE, HACK, REVIEW, NOTE +Style/CommentAnnotation: + Exclude: + - 'Guardfile' + +# Offense count: 1 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: EnforcedStyle, SingleLineConditionsOnly, IncludeTernaryExpressions. +# SupportedStyles: assign_to_condition, assign_inside_condition +Style/ConditionalAssignment: + Exclude: + - 'app/controllers/legacy/attempts_controller.rb' + +# Offense count: 353 +# Configuration parameters: AllowedConstants. +Style/Documentation: + Enabled: false + +# Offense count: 3 +# This cop supports safe autocorrection (--autocorrect). +Style/EmptyLiteral: + Exclude: + - 'lib/tasks/upload.rake' + +# Offense count: 50 +# This cop supports safe autocorrection (--autocorrect). +Style/ExpandPathArguments: + Enabled: false + +# Offense count: 5 +# This cop supports unsafe autocorrection (--autocorrect-all). +# Configuration parameters: EnforcedStyle. +# SupportedStyles: left_coerce, right_coerce, single_coerce, fdiv +Style/FloatDivision: + Exclude: + - 'app/models/legacy/question.rb' + - 'app/models/legacy/school_category.rb' + - 'app/models/legacy/school_question.rb' + - 'app/presenters/response_rate_presenter.rb' + +# Offense count: 390 +# This cop supports unsafe autocorrection (--autocorrect-all). +# Configuration parameters: EnforcedStyle. +# SupportedStyles: always, always_true, never +Style/FrozenStringLiteralComment: + Enabled: false + +# Offense count: 1 +# This cop supports unsafe autocorrection (--autocorrect-all). +Style/GlobalStdStream: + Exclude: + - 'config/environments/production.rb' + +# Offense count: 3 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: MinBodyLength, AllowConsecutiveConditionals. +Style/GuardClause: + Exclude: + - 'app/models/legacy/category.rb' + - 'app/models/legacy/school_category.rb' + - 'db/migrate/20211014202830_add_foreign_key_constraint_to_active_storage_attachments_for_blob_id.active_storage.rb' + +# Offense count: 3 +# This cop supports unsafe autocorrection (--autocorrect-all). +# Configuration parameters: AllowedReceivers. +# AllowedReceivers: Thread.current +Style/HashEachMethods: + Exclude: + - 'app/models/report/measure_summary.rb' + - 'app/models/report/survey_item.rb' + - 'app/models/report/survey_item_response.rb' + +# Offense count: 24 +# This cop supports safe autocorrection (--autocorrect). +Style/IfUnlessModifier: + Enabled: false + +# Offense count: 2 +# This cop supports unsafe autocorrection (--autocorrect-all). +# Configuration parameters: InverseMethods, InverseBlocks. +Style/InverseMethods: + Exclude: + - 'app/presenters/analyze/graph/column/all_admin.rb' + - 'bin/yarn' + +# Offense count: 1 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: EnforcedStyle. +# SupportedStyles: line_count_dependent, lambda, literal +Style/Lambda: + Exclude: + - 'app/services/dese/three_b_one.rb' + +# Offense count: 13 +Style/MixinUsage: + Exclude: + - 'bin/update' + - 'spec/controllers/overview_controller_spec.rb' + - 'spec/presenters/analyze/graph/column/all_admin_spec.rb' + - 'spec/presenters/analyze/graph/column/gender/female_spec.rb' + - 'spec/presenters/analyze/graph/students_by_race_spec.rb' + - 'spec/presenters/grouped_bar_column_presenter_spec.rb' + - 'spec/views/categories/show.html.erb_spec.rb' + - 'spec/views/overview/index.html.erb_spec.rb' + - 'spec/views/overview/variance_chart.html.erb_spec.rb' + +# Offense count: 8 +Style/MultilineBlockChain: + Exclude: + - 'app/models/report/survey_item.rb' + - 'app/models/report/survey_item_by_item.rb' + - 'app/presenters/analyze/graph/column/grouped_bar_column_presenter.rb' + - 'app/services/cleaner.rb' + - 'app/services/disaggregation_row.rb' + +# Offense count: 2 +# This cop supports safe autocorrection (--autocorrect). +Style/MultilineTernaryOperator: + Exclude: + - 'app/models/legacy/school_category.rb' + +# Offense count: 4 +# This cop supports unsafe autocorrection (--autocorrect-all). +# Configuration parameters: EnforcedStyle. +# SupportedStyles: literals, strict +Style/MutableConstant: + Exclude: + - 'app/models/income.rb' + - 'app/models/report/gps.rb' + - 'app/models/report/pillar.rb' + - 'app/models/respondent.rb' + +# Offense count: 2 +# This cop supports safe autocorrection (--autocorrect). +Style/NestedTernaryOperator: + Exclude: + - 'app/models/legacy/school_category.rb' + +# Offense count: 1 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: MinDigits, Strict, AllowedNumbers, AllowedPatterns. +Style/NumericLiterals: + Exclude: + - 'db/schema.rb' + +# Offense count: 26 +# This cop supports unsafe autocorrection (--autocorrect-all). +# Configuration parameters: EnforcedStyle, AllowedMethods, AllowedPatterns. +# SupportedStyles: predicate, comparison +Style/NumericPredicate: + Enabled: false + +# Offense count: 2 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: PreferredDelimiters. +Style/PercentLiteralDelimiters: + Exclude: + - 'Guardfile' + +# Offense count: 1 +# This cop supports safe autocorrection (--autocorrect). +Style/PerlBackrefs: + Exclude: + - 'bin/bundle' + +# Offense count: 2 +# This cop supports unsafe autocorrection (--autocorrect-all). +# Configuration parameters: SafeForConstants. +Style/RedundantFetchBlock: + Exclude: + - 'config/puma.rb' + +# Offense count: 25 +# This cop supports unsafe autocorrection (--autocorrect-all). +Style/RedundantInterpolation: + Exclude: + - 'app/models/report/survey_item.rb' + - 'app/models/report/survey_item_by_grade.rb' + - 'app/models/report/survey_item_by_item.rb' + - 'app/models/report/survey_item_response.rb' + - 'app/services/dese/five_c_one.rb' + - 'app/services/dese/four_a_one.rb' + - 'app/services/dese/four_b_two.rb' + - 'app/services/dese/one_a_three.rb' + - 'app/services/dese/three_b_one.rb' + - 'lib/tasks/data.rake' + - 'spec/views/categories/show.html.erb_spec.rb' + +# Offense count: 1 +# This cop supports safe autocorrection (--autocorrect). +Style/RedundantParentheses: + Exclude: + - 'app/models/legacy/recipient_schedule.rb' + +# Offense count: 3 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: AllowMultipleReturnValues. +Style/RedundantReturn: + Exclude: + - 'app/models/legacy/school_category.rb' + +# Offense count: 1 +# This cop supports unsafe autocorrection (--autocorrect-all). +Style/RedundantSelfAssignment: + Exclude: + - 'app/services/survey_item_values.rb' + +# Offense count: 4 +# This cop supports unsafe autocorrection (--autocorrect-all). +Style/RedundantSort: + Exclude: + - 'app/lib/seeder.rb' + - 'app/models/legacy/question.rb' + - 'app/models/report/survey_item_by_item.rb' + +# Offense count: 1 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: EnforcedStyle, AllowInnerSlashes. +# SupportedStyles: slashes, percent_r, mixed +Style/RegexpLiteral: + Exclude: + - 'app/lib/seeder.rb' + +# Offense count: 2 +# This cop supports unsafe autocorrection (--autocorrect-all). +# Configuration parameters: RequireEnglish. +# SupportedStyles: use_perl_names, use_english_names, use_builtin_english_names +Style/SpecialGlobalVars: + EnforcedStyle: use_perl_names + +# Offense count: 14 +# This cop supports unsafe autocorrection (--autocorrect-all). +# Configuration parameters: Mode. +Style/StringConcatenation: + Exclude: + - 'app/services/cleaner.rb' + - 'app/services/dese/loader.rb' + - 'app/services/dese/three_b_two.rb' + - 'lib/tasks/report.rake' + +# Offense count: 4333 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: EnforcedStyle, ConsistentQuotesInMultiline. +# SupportedStyles: single_quotes, double_quotes +Style/StringLiterals: + Enabled: false + +# Offense count: 1 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: EnforcedStyle. +# SupportedStyles: single_quotes, double_quotes +Style/StringLiteralsInInterpolation: + Exclude: + - 'lib/tasks/data.rake' + +# Offense count: 1 +# This cop supports unsafe autocorrection (--autocorrect-all). +Style/StructInheritance: + Exclude: + - 'app/models/summary.rb' + +# Offense count: 1 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: . +# SupportedStyles: percent, brackets +Style/SymbolArray: + EnforcedStyle: percent + MinSize: 5 + +# Offense count: 14 +# This cop supports unsafe autocorrection (--autocorrect-all). +# Configuration parameters: AllowMethodsWithArguments, AllowedMethods, AllowedPatterns, AllowComments. +# AllowedMethods: define_method +Style/SymbolProc: + Exclude: + - 'app/controllers/legacy/categories_controller.rb' + - 'app/models/report/beyond_learning_loss.rb' + - 'app/models/report/pillar.rb' + - 'app/models/report/survey_item_response.rb' + - 'app/presenters/analyze/graph/column/all_student.rb' + - 'app/presenters/analyze/presenter.rb' + - 'app/presenters/category_presenter.rb' + - 'app/services/survey_item_values.rb' + - 'lib/tasks/one_off.rake' + - 'lib/tasks/survey.rake' + +# Offense count: 1 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: EnforcedStyleForMultiline. +# SupportedStylesForMultiline: comma, consistent_comma, no_comma +Style/TrailingCommaInHashLiteral: + Exclude: + - 'Guardfile' + +# Offense count: 6 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: WordRegex. +# SupportedStyles: percent, brackets +Style/WordArray: + EnforcedStyle: percent + MinSize: 5 + +# Offense count: 5 +# This cop supports unsafe autocorrection (--autocorrect-all). +Style/ZeroLengthPredicate: + Exclude: + - 'app/models/legacy/school_category.rb' + - 'app/models/race.rb' + - 'app/models/survey_item.rb' + - 'app/presenters/analyze/graph/column/all_survey_data.rb' + +# Offense count: 410 +# This cop supports safe autocorrection (--autocorrect). +# Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, AllowedPatterns, SplitStrings. +# URISchemes: http, https +Layout/LineLength: + Max: 1359 diff --git a/Gemfile b/Gemfile index 4335b913..1366de09 100644 --- a/Gemfile +++ b/Gemfile @@ -1,80 +1,86 @@ -source "https://rubygems.org" -ruby file: ".ruby-version" +source 'https://rubygems.org' +ruby file: '.ruby-version' git_source(:github) do |repo_name| - repo_name = "#{repo_name}/#{repo_name}" unless repo_name.include?("/") + repo_name = "#{repo_name}/#{repo_name}" unless repo_name.include?('/') "https://github.com/#{repo_name}.git" end -gem "activerecord-import" -gem "bcrypt_pbkdf" -gem "bootsnap", require: false -gem "cssbundling-rails" -gem "csv", "~> 3.3" -gem "devise", git: "https://github.com/heartcombo/devise" -gem "ed25519" -gem "foreman" -gem "friendly_id", "~> 5.1.0" -gem "jsbundling-rails" -gem "logger" -gem "net-sftp" -gem "newrelic_rpm" -gem "nokogiri" -gem "observer", "~> 0.1.2" -gem "ostruct" -gem "pg" -gem "puma", ">= 6.4.0" -gem "rails", "~> 8.0.0" -gem "sprockets-rails" -gem "standard_deviation" -gem "stimulus-rails" -gem "turbo-rails" -gem "watir" +gem 'activerecord-import' +gem 'bcrypt_pbkdf' +gem 'bootsnap', require: false +gem 'cssbundling-rails' +gem 'csv', '~> 3.3' +gem 'devise', git: 'https://github.com/heartcombo/devise' +gem 'ed25519' +gem 'foreman' +gem 'friendly_id', '~> 5.1.0' +gem 'jsbundling-rails' +gem 'logger' +gem 'net-sftp' +gem 'newrelic_rpm' +gem 'nokogiri' +gem 'observer', '~> 0.1.2' +gem 'ostruct' +gem 'pg' +gem 'puma', '>= 6.4.0' +gem 'rails', '~> 8.0.0' +gem 'sprockets-rails' +gem 'standard_deviation' +gem 'stimulus-rails' +gem 'turbo-rails' +gem 'watir' group :development do # Access an IRB console on exception pages or by using <%= console %> anywhere in the code. - gem "brakeman" - gem "bullet", "~> 8.0" - gem "dexter" - gem "erb_lint", require: false - gem "erblint-github" - gem "guard" - gem "guard-livereload", "~> 2.5", require: false - gem "guard-rspec", require: false - gem "listen", "~> 3.8.0" - gem "nested_scaffold" - gem "pghero" - gem "pg_query", ">= 2" - gem "rack-livereload" - gem "rubocop", require: false - gem "seed_dump" - gem "solargraph-reek" - gem "spring" + gem 'brakeman' + gem 'bullet', '~> 8.0' + gem 'dexter' + gem 'erb_lint', require: false + gem 'erblint-github' + gem 'guard' + gem 'guard-livereload', '~> 2.5', require: false + gem 'guard-rspec', require: false + gem 'listen', '~> 3.8.0' + gem 'nested_scaffold' + gem 'pghero' + gem 'pg_query', '>= 2' + gem 'rack-livereload' + gem 'rubocop', require: false + gem 'rubocop-ast' + gem 'rubocop-performance', require: false + gem 'rubocop-rails', require: false + gem 'rubocop-rake', require: false + gem 'rubocop-rspec', require: false + gem 'rubocop-rspec_rails' + gem 'seed_dump' + gem 'solargraph-reek' + gem 'spring' # gem "web-console" # gem 'reek', require: false end group :development, :test do # Call 'byebug' anywhere in the code to stop execution and get a debugger console - gem "byebug", platform: :mri - gem "dotenv-rails" - gem "factory_bot_rails" - gem "parallel_tests" - gem "rack-mini-profiler" - gem "rspec-rails", "~> 6.0.3" + gem 'byebug', platform: :mri + gem 'dotenv-rails' + gem 'factory_bot_rails' + gem 'parallel_tests' + gem 'rack-mini-profiler' + gem 'rspec-rails', '~> 6.0.3' end group :test do - gem "capybara" - gem "cuprite" - gem "database_cleaner" - gem "launchy" - gem "rails-controller-testing" - gem "simplecov", require: false + gem 'capybara' + gem 'cuprite' + gem 'database_cleaner' + gem 'launchy' + gem 'rails-controller-testing' + gem 'simplecov', require: false # gem "timecop" end # Windows does not include zoneinfo files, so bundle the tzinfo-data gem -gem "tzinfo-data", platforms: %i[mingw mswin x64_mingw jruby] +gem 'tzinfo-data', platforms: %i[mingw mswin x64_mingw jruby] # gem "reline", "~> 0.3.2" diff --git a/Gemfile.lock b/Gemfile.lock index 5377aae8..dd8b7d91 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -425,6 +425,21 @@ GEM unicode-display_width (>= 2.4.0, < 4.0) rubocop-ast (1.38.0) parser (>= 3.3.1.0) + rubocop-performance (1.23.1) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) + rubocop-rails (2.29.1) + activesupport (>= 4.2.0) + rack (>= 1.1) + rubocop (>= 1.52.0, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) + rubocop-rake (0.6.0) + rubocop (~> 1.0) + rubocop-rspec (3.4.0) + rubocop (~> 1.61) + rubocop-rspec_rails (2.30.0) + rubocop (~> 1.61) + rubocop-rspec (~> 3, >= 3.0.1) ruby-progressbar (1.13.0) rubyzip (2.4.1) securerandom (0.4.1) @@ -558,6 +573,12 @@ DEPENDENCIES rails-controller-testing rspec-rails (~> 6.0.3) rubocop + rubocop-ast + rubocop-performance + rubocop-rails + rubocop-rake + rubocop-rspec + rubocop-rspec_rails seed_dump simplecov solargraph-reek