hrntsm/Tunny

View on GitHub

Showing 77 of 198 total issues

File Algorithm.cs has 643 lines of code (exceeds 250 allowed). Consider refactoring.
Open

using System;
using System.Collections.Generic;
using System.Globalization;
using System.IO;
using System.Linq;
Severity: Major
Found in Tunny/Solver/Algorithm.cs - About 1 day to fix

    File Storage.cs has 600 lines of code (exceeds 250 allowed). Consider refactoring.
    Open

    using System;
    using System.Collections.Generic;
    using System.Data.SQLite;
    using System.IO;
    using System.Linq;
    Severity: Major
    Found in Optuna/Storage/RDB/Storage.cs - About 1 day to fix

      File OptimizeViewModel.cs has 550 lines of code (exceeds 250 allowed). Consider refactoring.
      Open

      using System;
      using System.Collections.ObjectModel;
      using System.Globalization;
      using System.IO;
      using System.Runtime.InteropServices;
      Severity: Major
      Found in Tunny/WPF/ViewModels/Optimize/OptimizeViewModel.cs - About 1 day to fix

        File GrasshopperInOut.cs has 499 lines of code (exceeds 250 allowed). Consider refactoring.
        Open

        using System;
        using System.Collections.Generic;
        using System.Globalization;
        using System.Linq;
        using System.Threading.Tasks;
        Severity: Minor
        Found in Tunny/Util/GrasshopperInOut.cs - About 1 day to fix

          File OutputViewModel.cs has 454 lines of code (exceeds 250 allowed). Consider refactoring.
          Open

          using System.Collections.Generic;
          using System.Collections.ObjectModel;
          using System.Globalization;
          using System.IO;
          using System.Linq;
          Severity: Minor
          Found in Tunny/WPF/ViewModels/Output/OutputViewModel.cs - About 6 hrs to fix

            Method GetTargetValue has a Cognitive Complexity of 50 (exceeds 20 allowed). Consider refactoring.
            Open

                    private double GetTargetValue(Trial trial, string target)
                    {
                        if (target == "ID")
                        {
                            return trial.TrialId;
            Severity: Minor
            Found in Tunny/WPF/ViewModels/Output/AnalysisChartViewModel.cs - About 5 hrs to fix

            Cognitive Complexity

            Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

            A method's cognitive complexity is based on a few simple rules:

            • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
            • Code is considered more complex for each "break in the linear flow of the code"
            • Code is considered more complex when "flow breaking structures are nested"

            Further reading

            File Storage.cs has 352 lines of code (exceeds 250 allowed). Consider refactoring.
            Open

            using System;
            using System.Collections.Generic;
            using System.IO;
            using System.Linq;
            
            
            Severity: Minor
            Found in Optuna/Storage/Journal/Storage.cs - About 4 hrs to fix

              Class SqliteStorage has 32 methods (exceeds 20 allowed). Consider refactoring.
              Open

                  public class SqliteStorage : IOptunaStorage
                  {
                      private readonly Dictionary<int, Study.Study> _studies = new Dictionary<int, Study.Study>();
                      private readonly SQLiteConnectionStringBuilder _sqliteConnection;
                      private int _nextStudyId;
              Severity: Minor
              Found in Optuna/Storage/RDB/Storage.cs - About 4 hrs to fix

                Class JournalStorage has 30 methods (exceeds 20 allowed). Consider refactoring.
                Open

                    public class JournalStorage : IOptunaStorage
                    {
                        private readonly Dictionary<int, Study.Study> _studies = new Dictionary<int, Study.Study>();
                        private int _nextStudyId;
                        private int _trialId;
                Severity: Minor
                Found in Optuna/Storage/Journal/Storage.cs - About 3 hrs to fix

                  Class Algorithm has 30 methods (exceeds 20 allowed). Consider refactoring.
                  Open

                      public class Algorithm : PythonInit
                      {
                          public Parameter[] OptimalParameters { get; private set; }
                          public EndState EndState { get; private set; }
                  
                  
                  Severity: Minor
                  Found in Tunny/Solver/Algorithm.cs - About 3 hrs to fix

                    Method CreateBaseTables has 90 lines of code (exceeds 25 allowed). Consider refactoring.
                    Open

                            private void CreateBaseTables()
                            {
                                var commands = new StringBuilder();
                                commands.Append("CREATE TABLE IF NOT EXISTS alembic_version(");
                                commands.Append("   version_num VARCHAR(32) PRIMARY KEY NOT NULL");
                    Severity: Major
                    Found in Optuna/Storage/RDB/Storage.cs - About 3 hrs to fix

                      Method DrawTable has 89 lines of code (exceeds 25 allowed). Consider refactoring.
                      Open

                              private void DrawTable()
                              {
                                  var table = new DataTable();
                                  table.Columns.Add("ID", typeof(int));
                      
                      
                      Severity: Major
                      Found in Tunny/WPF/ViewModels/Output/AnalysisTableViewModel.cs - About 3 hrs to fix

                        Method DrawTable has a Cognitive Complexity of 39 (exceeds 20 allowed). Consider refactoring.
                        Open

                                private void DrawTable()
                                {
                                    var table = new DataTable();
                                    table.Columns.Add("ID", typeof(int));
                        
                        
                        Severity: Minor
                        Found in Tunny/WPF/ViewModels/Output/AnalysisTableViewModel.cs - About 3 hrs to fix

                        Cognitive Complexity

                        Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

                        A method's cognitive complexity is based on a few simple rules:

                        • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
                        • Code is considered more complex for each "break in the linear flow of the code"
                        • Code is considered more complex when "flow breaking structures are nested"

                        Further reading

                        Class IOptunaStorage has 28 methods (exceeds 20 allowed). Consider refactoring.
                        Open

                            public interface IOptunaStorage
                            {
                                // Basic study manipulation
                                int CreateNewStudy(StudyDirection[] studyDirections, string studyName);
                                void DeleteStudy(int studyId);
                        Severity: Minor
                        Found in Optuna/Storage/IOptunaStorage.cs - About 3 hrs to fix

                          Method ChangeTargetSampler has 74 lines of code (exceeds 25 allowed). Consider refactoring.
                          Open

                                  public void ChangeTargetSampler(SamplerType samplerType)
                                  {
                                      ITrialNumberParam param;
                                      switch (samplerType)
                                      {
                          Severity: Major
                          Found in Tunny/WPF/ViewModels/Optimize/OptimizeViewModel.cs - About 2 hrs to fix

                            Class GrasshopperInOut has 24 methods (exceeds 20 allowed). Consider refactoring.
                            Open

                                public class GrasshopperInOut
                                {
                                    private readonly GH_Document _document;
                                    private readonly List<Guid> _inputGuids;
                                    private readonly GH_Component _component;
                            Severity: Minor
                            Found in Tunny/Util/GrasshopperInOut.cs - About 2 hrs to fix

                              File AnalysisChartViewModel.cs has 277 lines of code (exceeds 250 allowed). Consider refactoring.
                              Open

                              using System;
                              using System.Collections.Generic;
                              using System.Collections.ObjectModel;
                              using System.Globalization;
                              using System.Linq;
                              Severity: Minor
                              Found in Tunny/WPF/ViewModels/Output/AnalysisChartViewModel.cs - About 2 hrs to fix

                                Method RunSingleOptimizeStep has 65 lines of code (exceeds 25 allowed). Consider refactoring.
                                Open

                                        private TrialGrasshopperItems RunSingleOptimizeStep(OptimizationHandlingInfo optInfo, Parameter[] parameter, int trialNum, DateTime startTime)
                                        {
                                            TLog.MethodStart();
                                            dynamic optuna = Py.Import("optuna");
                                            TrialWrapper trial;
                                Severity: Major
                                Found in Tunny/Solver/Algorithm.cs - About 2 hrs to fix

                                  Method SetStudyId has 62 lines of code (exceeds 25 allowed). Consider refactoring.
                                  Open

                                          internal void SetStudyId(int studyId)
                                          {
                                              _selectedStudyId = studyId;
                                              XAxisItems.Clear();
                                              YAxisItems.Clear();
                                  Severity: Major
                                  Found in Tunny/WPF/ViewModels/Output/AnalysisChartViewModel.cs - About 2 hrs to fix

                                    Method GetTargetValue has 61 lines of code (exceeds 25 allowed). Consider refactoring.
                                    Open

                                            private double GetTargetValue(Trial trial, string target)
                                            {
                                                if (target == "ID")
                                                {
                                                    return trial.TrialId;
                                    Severity: Major
                                    Found in Tunny/WPF/ViewModels/Output/AnalysisChartViewModel.cs - About 2 hrs to fix
                                      Severity
                                      Category
                                      Status
                                      Source
                                      Language