{
  "_class" : "io.jenkins.plugins.analysis.core.restapi.ReportApi",
  "issues" : [
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "ContextSnapshot.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/role/impl/ContextSnapshot.java",
      "fingerprint" : "FFC744601D54DCB87DCB7DB1CB2689C8",
      "lineEnd" : 50,
      "lineStart" : 50,
      "message" : "should be weak references? Should a context be alive as soon as all the objects created with it are",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.role.impl",
      "reference" : "546",
      "severity" : "NORMAL",
      "toString" : "ContextSnapshot.java(50,0): TODO: : should be weak references? Should a context be alive as soon as all the objects created with it are",
      "type" : "TODO"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "OwnerRoleFactoryProvider.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/role/spi/OwnerRoleFactoryProvider.java",
      "fingerprint" : "A385C86811235CE5309B74C76ED6EC77",
      "lineEnd" : 43,
      "lineStart" : 43,
      "message" : "will go away with Java 17",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.role.spi",
      "reference" : "546",
      "severity" : "NORMAL",
      "toString" : "OwnerRoleFactoryProvider.java(43,0): TODO: : will go away with Java 17",
      "type" : "TODO"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "SystemRoleFactorySupport.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/role/spi/SystemRoleFactorySupport.java",
      "fingerprint" : "146794447BE548EEF276BEA93170C5B8",
      "lineEnd" : 70,
      "lineStart" : 70,
      "message" : "use ConcurrentHashMap",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.role.spi",
      "reference" : "546",
      "severity" : "HIGH",
      "toString" : "SystemRoleFactorySupport.java(70,0): FIXME: : use ConcurrentHashMap",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "SystemRoleFactorySupport.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/role/spi/SystemRoleFactorySupport.java",
      "fingerprint" : "06FCAF91D36EFE8CCE756D9A45FA5A5F",
      "lineEnd" : 165,
      "lineStart" : 165,
      "message" : "it's injecting null, but perhaps should it throw exception?",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.role.spi",
      "reference" : "546",
      "severity" : "HIGH",
      "toString" : "SystemRoleFactorySupport.java(165,0): FIXME: : it's injecting null, but perhaps should it throw exception?",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "As.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/As.java",
      "fingerprint" : "FF70B2D448D3840F5B7E18744B384A53",
      "lineEnd" : 192,
      "lineStart" : 192,
      "message" : "there's no static check of the argument",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util",
      "reference" : "535",
      "severity" : "HIGH",
      "toString" : "As.java(192,0): FIXME: : there's no static check of the argument",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "AsExtensions.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/AsExtensions.java",
      "fingerprint" : "C887CFA7649EA7456E4AB01C1C026CBC",
      "lineEnd" : 38,
      "lineStart" : 38,
      "message" : "this class doesn't cache - every as*() call instantiates new objects.",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util",
      "reference" : "531",
      "severity" : "HIGH",
      "toString" : "AsExtensions.java(38,0): FIXME: : this class doesn't cache - every as*() call instantiates new objects.",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "Key.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/Key.java",
      "fingerprint" : "C7AA933D1745CF5B492CAAA99FE6C3CB",
      "lineEnd" : 55,
      "lineStart" : 55,
      "message" : "a Set would be enough.",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util",
      "reference" : "255",
      "severity" : "HIGH",
      "toString" : "Key.java(55,0): FIXME: : a Set would be enough.",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "PreferencesHandler.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/PreferencesHandler.java",
      "fingerprint" : "7A89D20963A049CE3F0B46DAFA63D0AB",
      "lineEnd" : 54,
      "lineStart" : 54,
      "message" : "make private as soon as the right Java version is required",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util",
      "reference" : "612",
      "severity" : "HIGH",
      "toString" : "PreferencesHandler.java(54,0): FIXME: : make private as soon as the right Java version is required",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "TimeProvider.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/TimeProvider.java",
      "fingerprint" : "816546FD605A518FB38B4C63574EA334",
      "lineEnd" : 49,
      "lineStart" : 49,
      "message" : "should be private",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util",
      "reference" : "253",
      "severity" : "HIGH",
      "toString" : "TimeProvider.java(49,0): FIXME: : should be private",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "DefaultPreferencesHandler.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/impl/DefaultPreferencesHandler.java",
      "fingerprint" : "2060B6AD14D0353E602F74A4DA8B77A7",
      "lineEnd" : 115,
      "lineStart" : 115,
      "message" : "should be made persistent (JSON?)",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util.impl",
      "reference" : "546",
      "severity" : "HIGH",
      "toString" : "DefaultPreferencesHandler.java(115,0): FIXME: : should be made persistent (JSON?)",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "SupplierFinder.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/impl/finder/SupplierFinder.java",
      "fingerprint" : "AF826051E1AB49FE6E15844E754041B9",
      "lineEnd" : 66,
      "lineStart" : 66,
      "message" : "or computeNeededResults()?",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util.impl.finder",
      "reference" : "542",
      "severity" : "HIGH",
      "toString" : "SupplierFinder.java(66,0): FIXME: : or computeNeededResults()?",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "DefaultProcessExecutor.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/spi/DefaultProcessExecutor.java",
      "fingerprint" : "0B0A7BE5D84863AA98DF8CC75405AADD",
      "lineEnd" : 183,
      "lineStart" : 183,
      "message" : "sync",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util.spi",
      "reference" : "256",
      "severity" : "HIGH",
      "toString" : "DefaultProcessExecutor.java(183,0): FIXME: : sync",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "DefaultProcessExecutor.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/spi/DefaultProcessExecutor.java",
      "fingerprint" : "C716517C995ACF1FF3BC24B577322385",
      "lineEnd" : 210,
      "lineStart" : 210,
      "message" : "sync",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util.spi",
      "reference" : "540",
      "severity" : "NORMAL",
      "toString" : "DefaultProcessExecutor.java(210,0): TODO: : sync",
      "type" : "TODO"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "DefaultProcessExecutor.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/spi/DefaultProcessExecutor.java",
      "fingerprint" : "767F9DB41E3515F0F040869DA28374E6",
      "lineEnd" : 252,
      "lineStart" : 252,
      "message" : "polls because it doesn't get notified",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util.spi",
      "reference" : "238",
      "severity" : "HIGH",
      "toString" : "DefaultProcessExecutor.java(252,0): FIXME: : polls because it doesn't get notified",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "DefaultProcessExecutor.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/spi/DefaultProcessExecutor.java",
      "fingerprint" : "84A3B850DB872EAD13F33384A345ADB2",
      "lineEnd" : 457,
      "lineStart" : 457,
      "message" : "",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util.spi",
      "reference" : "238",
      "severity" : "HIGH",
      "toString" : "DefaultProcessExecutor.java(457,0): FIXME: : ",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "ThreadAssertions.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/thread/ThreadAssertions.java",
      "fingerprint" : "E0CE2FB263D0432FE9A1D76537CEA7C9",
      "lineEnd" : 64,
      "lineStart" : 64,
      "message" : "",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util.thread",
      "reference" : "238",
      "severity" : "HIGH",
      "toString" : "ThreadAssertions.java(64,0): FIXME: : ",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "ThreadAssertions.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/thread/ThreadAssertions.java",
      "fingerprint" : "FE340D16744EEAB95F0F113A396B4721",
      "lineEnd" : 67,
      "lineStart" : 67,
      "message" : "",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util.thread",
      "reference" : "238",
      "severity" : "HIGH",
      "toString" : "ThreadAssertions.java(67,0): FIXME: : ",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "ContextSnapshotTest.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/test/java/it/tidalwave/role/impl/ContextSnapshotTest.java",
      "fingerprint" : "B9360A9D94C9D66FAEFF68051AD27B42",
      "lineEnd" : 103,
      "lineStart" : 103,
      "message" : "depend on commented stubbing above",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.role.impl",
      "reference" : "238",
      "severity" : "HIGH",
      "toString" : "ContextSnapshotTest.java(103,0): FIXME: : depend on commented stubbing above",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "DefaultContextManagerTest.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/test/java/it/tidalwave/role/impl/DefaultContextManagerTest.java",
      "fingerprint" : "D006C3C6426E7AA60B649C47AA51C356",
      "lineEnd" : 248,
      "lineStart" : 248,
      "message" : "test findContextOfType()",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.role.impl",
      "reference" : "256",
      "severity" : "NORMAL",
      "toString" : "DefaultContextManagerTest.java(248,0): TODO: : test findContextOfType()",
      "type" : "TODO"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "UserNotificationWithFeedbackTestHelper.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/test/java/it/tidalwave/util/ui/UserNotificationWithFeedbackTestHelper.java",
      "fingerprint" : "98924C4E81253D60BD57A7AC0944798A",
      "lineEnd" : 128,
      "lineStart" : 128,
      "message" : "use Platform.runLater() and wait",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util.ui",
      "reference" : "619",
      "severity" : "HIGH",
      "toString" : "UserNotificationWithFeedbackTestHelper.java(128,0): FIXME: : use Platform.runLater() and wait",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "UserNotificationWithFeedbackTestHelper.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/test/java/it/tidalwave/util/ui/UserNotificationWithFeedbackTestHelper.java",
      "fingerprint" : "619B4788C5AB2BAA8E896D3E6F5689D3",
      "lineEnd" : 151,
      "lineStart" : 151,
      "message" : "use Platform.runLater() and wait",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util.ui",
      "reference" : "619",
      "severity" : "HIGH",
      "toString" : "UserNotificationWithFeedbackTestHelper.java(151,0): FIXME: : use Platform.runLater() and wait",
      "type" : "FIXME"
    }
  ],
  "size" : 21,
  "toString" : "21 warnings (high: 17, normal: 4)"
}